From 9b8dd96206a8601f5366ebb74ba1af398cdd091d Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 19 Feb 2023 18:19:29 -0600
Subject: [PATCH 01/71] updated SpellFixer to support RtL languages (now that
 it's used natively in the Ptx plugin for BTs)

---
 src/SpellingFixerEC/AssemblyInfo.cs           |  10 +-
 src/SpellingFixerEC/LoginSF.cs                | 189 +++++----
 src/SpellingFixerEC/LoginSF.resx              | 303 ++-------------
 .../QueryFindReplaceDialog.Designer.cs        | 285 ++++++++++++++
 src/SpellingFixerEC/QueryFindReplaceDialog.cs | 190 +++++++++
 ...lling.resx => QueryFindReplaceDialog.resx} | 293 +++++++-------
 src/SpellingFixerEC/QueryGoodSpelling.cs      | 367 ------------------
 src/SpellingFixerEC/SpellingFixerEC.cs        |  39 +-
 src/SpellingFixerEC/SpellingFixerEC.csproj    |  11 +-
 src/SpellingFixerEC/ViewBadGoodPairsDlg.cs    |  22 +-
 10 files changed, 835 insertions(+), 874 deletions(-)
 create mode 100644 src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs
 create mode 100644 src/SpellingFixerEC/QueryFindReplaceDialog.cs
 rename src/SpellingFixerEC/{QueryGoodSpelling.resx => QueryFindReplaceDialog.resx} (92%)
 delete mode 100644 src/SpellingFixerEC/QueryGoodSpelling.cs

diff --git a/src/SpellingFixerEC/AssemblyInfo.cs b/src/SpellingFixerEC/AssemblyInfo.cs
index 355e8d83..49c88e23 100644
--- a/src/SpellingFixerEC/AssemblyInfo.cs
+++ b/src/SpellingFixerEC/AssemblyInfo.cs
@@ -8,12 +8,12 @@
 // associated with an assembly.
 //
 [assembly: AssemblyTitle("SIL Spelling fixer plug-in")]
-[assembly: AssemblyDescription("SIL Spelling fixer plug-in (for use with EncConverters)")]
+[assembly: AssemblyDescription("SIL Spelling fixer plug-in (for use with EncConverters). A GUI wrapper on CC (Consistent changes)")]
 [assembly: AssemblyConfiguration("")]
 [assembly: AssemblyCompany("SIL")]
 [assembly: AssemblyProduct("SpellingFixerEC")]
-[assembly: AssemblyCopyright("Copyright © 2004-2021 SIL. All rights reserved.")]
-[assembly: AssemblyTrademark("Copyright © 2004-2021 SIL. All rights reserved.")]
+[assembly: AssemblyCopyright("Copyright © 2004-2023 SIL. All rights reserved.")]
+[assembly: AssemblyTrademark("Copyright © 2004-2023 SIL. All rights reserved.")]
 [assembly: AssemblyCulture("")]
 
 //
@@ -27,7 +27,7 @@
 // You can specify all the values or you can default the Revision and Build Numbers 
 // by using the '*' as shown below:
 
-[assembly: AssemblyVersion("4.0.0.0")]
+[assembly: AssemblyVersion("5.0.0.0")]
 
 //
 // In order to sign your assembly you must specify a key to use. Refer to the 
@@ -57,5 +57,5 @@
 [assembly: AssemblyDelaySign(false)]
 // [assembly: AssemblyKeyFile("")]
 [assembly: AssemblyKeyName("")]
-[assembly: AssemblyFileVersion("4.5.0.0")]
+[assembly: AssemblyFileVersion("5.0.0.0")]
 [assembly: NeutralResourcesLanguageAttribute("en")]
diff --git a/src/SpellingFixerEC/LoginSF.cs b/src/SpellingFixerEC/LoginSF.cs
index 62f43bb1..aec4ba34 100644
--- a/src/SpellingFixerEC/LoginSF.cs
+++ b/src/SpellingFixerEC/LoginSF.cs
@@ -43,6 +43,7 @@ internal class LoginSF : System.Windows.Forms.Form
         private System.ComponentModel.IContainer components;
 
         private bool    m_bLegacy;
+        private bool    m_isRightToleft;
         private int     m_cp = 1252;
         private Font    m_font;
         private string  m_strConverterSpec;
@@ -60,6 +61,7 @@ internal class LoginSF : System.Windows.Forms.Form
         private System.Windows.Forms.Label label2;
         private System.Windows.Forms.TextBox textBoxAddlPunctuation;
         private string  m_strNonWordCharacters;
+        private CheckBox checkBoxRtL;
         private string  cstrProjectMostRecentProject = "MostRecentProject";
 
 		public LoginSF()
@@ -151,6 +153,11 @@ public string WordBoundaryDelimiter
             get { return m_strWordBoundaryDelimiter; }
         }
 
+        public bool IsRightToLeft
+        {
+            get { return m_isRightToleft; }
+        }
+
         public string Punctuation
         {
             get { return m_strNonWordCharacters; }
@@ -179,7 +186,7 @@ protected override void Dispose( bool disposing )
 		private void InitializeComponent()
 		{
             this.components = new System.ComponentModel.Container();
-            System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(LoginSF));
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LoginSF));
             this.checkedListBoxProjects = new System.Windows.Forms.CheckedListBox();
             this.buttonOK = new System.Windows.Forms.Button();
             this.buttonCancel = new System.Windows.Forms.Button();
@@ -205,27 +212,29 @@ private void InitializeComponent()
             this.menuItemDeleteAll = new System.Windows.Forms.MenuItem();
             this.menuItemEdit = new System.Windows.Forms.MenuItem();
             this.labelInstructions = new System.Windows.Forms.Label();
+            this.checkBoxRtL = new System.Windows.Forms.CheckBox();
             this.groupBoxNewProject.SuspendLayout();
             this.SuspendLayout();
             // 
             // checkedListBoxProjects
             // 
             this.checkedListBoxProjects.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.checkedListBoxProjects.Location = new System.Drawing.Point(16, 16);
+            this.checkedListBoxProjects.Location = new System.Drawing.Point(32, 30);
             this.checkedListBoxProjects.Name = "checkedListBoxProjects";
-            this.checkedListBoxProjects.Size = new System.Drawing.Size(360, 154);
+            this.checkedListBoxProjects.Size = new System.Drawing.Size(720, 256);
             this.checkedListBoxProjects.TabIndex = 0;
             this.checkedListBoxProjects.ThreeDCheckBoxes = true;
             this.toolTips.SetToolTip(this.checkedListBoxProjects, "List of existing projects");
-            this.checkedListBoxProjects.DoubleClick += new System.EventHandler(this.checkedListBoxProjects_DoubleClick);
             this.checkedListBoxProjects.SelectedIndexChanged += new System.EventHandler(this.checkedListBoxProjects_SelectedIndexChanged);
+            this.checkedListBoxProjects.DoubleClick += new System.EventHandler(this.checkedListBoxProjects_DoubleClick);
             this.checkedListBoxProjects.MouseUp += new System.Windows.Forms.MouseEventHandler(this.checkedListBoxProjects_MouseUp);
             // 
             // buttonOK
             // 
-            this.buttonOK.Location = new System.Drawing.Point(115, 464);
+            this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.buttonOK.Location = new System.Drawing.Point(230, 913);
             this.buttonOK.Name = "buttonOK";
-            this.buttonOK.Size = new System.Drawing.Size(75, 24);
+            this.buttonOK.Size = new System.Drawing.Size(150, 44);
             this.buttonOK.TabIndex = 11;
             this.buttonOK.Text = "OK";
             this.toolTips.SetToolTip(this.buttonOK, "Click to use the checked project");
@@ -233,10 +242,11 @@ private void InitializeComponent()
             // 
             // buttonCancel
             // 
+            this.buttonCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.buttonCancel.Location = new System.Drawing.Point(203, 464);
+            this.buttonCancel.Location = new System.Drawing.Point(406, 913);
             this.buttonCancel.Name = "buttonCancel";
-            this.buttonCancel.Size = new System.Drawing.Size(75, 24);
+            this.buttonCancel.Size = new System.Drawing.Size(150, 44);
             this.buttonCancel.TabIndex = 12;
             this.buttonCancel.Text = "Cancel";
             this.toolTips.SetToolTip(this.buttonCancel, "Click to cancel this operation");
@@ -244,19 +254,18 @@ private void InitializeComponent()
             // 
             // labelName
             // 
-            this.labelName.Location = new System.Drawing.Point(32, 216);
+            this.labelName.Location = new System.Drawing.Point(64, 399);
             this.labelName.Name = "labelName";
-            this.labelName.Size = new System.Drawing.Size(56, 23);
+            this.labelName.Size = new System.Drawing.Size(112, 42);
             this.labelName.TabIndex = 1;
             this.labelName.Text = "&Name:";
             // 
             // textBoxNewProjectName
             // 
-            this.textBoxNewProjectName.Location = new System.Drawing.Point(88, 216);
+            this.textBoxNewProjectName.Location = new System.Drawing.Point(176, 399);
             this.textBoxNewProjectName.Name = "textBoxNewProjectName";
-            this.textBoxNewProjectName.Size = new System.Drawing.Size(272, 20);
+            this.textBoxNewProjectName.Size = new System.Drawing.Size(544, 31);
             this.textBoxNewProjectName.TabIndex = 2;
-            this.textBoxNewProjectName.Text = "";
             this.toolTips.SetToolTip(this.textBoxNewProjectName, "Enter the name of a new projects (e.g. \'Hindi\')");
             this.textBoxNewProjectName.TextChanged += new System.EventHandler(this.textBoxNewProjectName_TextChanged);
             // 
@@ -266,9 +275,9 @@ private void InitializeComponent()
             this.checkBoxUnicode.Checked = true;
             this.checkBoxUnicode.CheckState = System.Windows.Forms.CheckState.Checked;
             this.checkBoxUnicode.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.checkBoxUnicode.Location = new System.Drawing.Point(16, 120);
+            this.checkBoxUnicode.Location = new System.Drawing.Point(32, 222);
             this.checkBoxUnicode.Name = "checkBoxUnicode";
-            this.checkBoxUnicode.Size = new System.Drawing.Size(72, 24);
+            this.checkBoxUnicode.Size = new System.Drawing.Size(144, 44);
             this.checkBoxUnicode.TabIndex = 7;
             this.checkBoxUnicode.Text = "&Unicode:";
             this.toolTips.SetToolTip(this.checkBoxUnicode, "Check this if the data is Unicode-encoded (otherwise, it is Legacy-encoded)");
@@ -276,9 +285,9 @@ private void InitializeComponent()
             // 
             // buttonAddNewProject
             // 
-            this.buttonAddNewProject.Location = new System.Drawing.Point(116, 224);
+            this.buttonAddNewProject.Location = new System.Drawing.Point(232, 468);
             this.buttonAddNewProject.Name = "buttonAddNewProject";
-            this.buttonAddNewProject.Size = new System.Drawing.Size(128, 23);
+            this.buttonAddNewProject.Size = new System.Drawing.Size(256, 42);
             this.buttonAddNewProject.TabIndex = 10;
             this.buttonAddNewProject.Text = "&Add New Project";
             this.toolTips.SetToolTip(this.buttonAddNewProject, "Click to add new project");
@@ -286,6 +295,10 @@ private void InitializeComponent()
             // 
             // groupBoxNewProject
             // 
+            this.groupBoxNewProject.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.groupBoxNewProject.Controls.Add(this.checkBoxRtL);
             this.groupBoxNewProject.Controls.Add(this.textBoxAddlPunctuation);
             this.groupBoxNewProject.Controls.Add(this.label2);
             this.groupBoxNewProject.Controls.Add(this.textBoxWordBoundaryDelimiter);
@@ -298,82 +311,80 @@ private void InitializeComponent()
             this.groupBoxNewProject.Controls.Add(this.textBoxCP);
             this.groupBoxNewProject.Controls.Add(this.listBoxFontSize);
             this.groupBoxNewProject.Controls.Add(this.buttonAddNewProject);
-            this.groupBoxNewProject.Location = new System.Drawing.Point(16, 184);
+            this.groupBoxNewProject.Location = new System.Drawing.Point(32, 340);
             this.groupBoxNewProject.Name = "groupBoxNewProject";
-            this.groupBoxNewProject.Size = new System.Drawing.Size(360, 264);
+            this.groupBoxNewProject.Size = new System.Drawing.Size(720, 549);
             this.groupBoxNewProject.TabIndex = 9;
             this.groupBoxNewProject.TabStop = false;
             this.groupBoxNewProject.Text = "New Project";
             // 
             // textBoxAddlPunctuation
             // 
-            this.textBoxAddlPunctuation.Location = new System.Drawing.Point(232, 184);
+            this.textBoxAddlPunctuation.Location = new System.Drawing.Point(464, 394);
             this.textBoxAddlPunctuation.Name = "textBoxAddlPunctuation";
-            this.textBoxAddlPunctuation.Size = new System.Drawing.Size(112, 20);
+            this.textBoxAddlPunctuation.Size = new System.Drawing.Size(224, 31);
             this.textBoxAddlPunctuation.TabIndex = 14;
-            this.textBoxAddlPunctuation.Text = "";
             this.toolTips.SetToolTip(this.textBoxAddlPunctuation, "Enter any additional punctuation or whitespace characters needed for this languag" +
-                "e, separated by spaces");
+        "e, separated by spaces");
             // 
             // label2
             // 
-            this.label2.Location = new System.Drawing.Point(16, 184);
+            this.label2.Location = new System.Drawing.Point(32, 394);
             this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(208, 24);
+            this.label2.Size = new System.Drawing.Size(416, 44);
             this.label2.TabIndex = 13;
             this.label2.Text = "Additional &punctuation and whitespace:";
             // 
             // textBoxWordBoundaryDelimiter
             // 
-            this.textBoxWordBoundaryDelimiter.Location = new System.Drawing.Point(232, 152);
+            this.textBoxWordBoundaryDelimiter.Location = new System.Drawing.Point(464, 335);
             this.textBoxWordBoundaryDelimiter.Name = "textBoxWordBoundaryDelimiter";
-            this.textBoxWordBoundaryDelimiter.Size = new System.Drawing.Size(24, 20);
+            this.textBoxWordBoundaryDelimiter.Size = new System.Drawing.Size(48, 31);
             this.textBoxWordBoundaryDelimiter.TabIndex = 12;
-            this.textBoxWordBoundaryDelimiter.Text = SpellingFixerEC.cstrDefaultWordBoundaryDelimiter;
-            this.toolTips.SetToolTip(this.textBoxWordBoundaryDelimiter, "Enter the character(s) to use as a word boundary delimiter (e.g. with a delimiter" +
-                " of \"#\", you can enter the \"bad spelling\" words like: #car#, which will only mat" +
-                "ch if the search string is \"car\", but not \"cars\" or \"sportscar\")");
+            this.textBoxWordBoundaryDelimiter.Text = "#";
+            this.toolTips.SetToolTip(this.textBoxWordBoundaryDelimiter, resources.GetString("textBoxWordBoundaryDelimiter.ToolTip"));
             this.textBoxWordBoundaryDelimiter.TextChanged += new System.EventHandler(this.textBoxWordBoundaryDelimiter_TextChanged);
             // 
             // label1
             // 
-            this.label1.Location = new System.Drawing.Point(16, 154);
+            this.label1.Location = new System.Drawing.Point(32, 338);
             this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(136, 16);
+            this.label1.Size = new System.Drawing.Size(272, 30);
             this.label1.TabIndex = 11;
             this.label1.Text = "&Word boundary delimiter:";
             // 
             // labelFont
             // 
-            this.labelFont.Location = new System.Drawing.Point(16, 64);
+            this.labelFont.Location = new System.Drawing.Point(32, 118);
             this.labelFont.Name = "labelFont";
+            this.labelFont.Size = new System.Drawing.Size(200, 43);
             this.labelFont.TabIndex = 3;
             this.labelFont.Text = "&Font:";
             // 
             // comboBoxFont
             // 
             this.comboBoxFont.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.comboBoxFont.Location = new System.Drawing.Point(24, 88);
+            this.comboBoxFont.Location = new System.Drawing.Point(48, 162);
             this.comboBoxFont.Name = "comboBoxFont";
-            this.comboBoxFont.Size = new System.Drawing.Size(232, 21);
+            this.comboBoxFont.Size = new System.Drawing.Size(464, 33);
             this.comboBoxFont.TabIndex = 4;
             this.toolTips.SetToolTip(this.comboBoxFont, "Choose the font to be used for displaying the words whose spelling is to be corre" +
-                "cted (e.g. \'Arial Unicode MS\')");
+        "cted (e.g. \'Arial Unicode MS\')");
             this.comboBoxFont.SelectedIndexChanged += new System.EventHandler(this.comboBoxFont_SelectedIndexChanged);
             // 
             // labelFontSize
             // 
-            this.labelFontSize.Location = new System.Drawing.Point(264, 64);
+            this.labelFontSize.Location = new System.Drawing.Point(528, 118);
             this.labelFontSize.Name = "labelFontSize";
-            this.labelFontSize.Size = new System.Drawing.Size(64, 23);
+            this.labelFontSize.Size = new System.Drawing.Size(128, 43);
             this.labelFontSize.TabIndex = 5;
             this.labelFontSize.Text = "Font &Size:";
             // 
             // labelCP
             // 
-            this.labelCP.Location = new System.Drawing.Point(120, 120);
+            this.labelCP.Location = new System.Drawing.Point(240, 222);
             this.labelCP.Name = "labelCP";
-            this.labelCP.Size = new System.Drawing.Size(80, 23);
+            this.labelCP.Size = new System.Drawing.Size(160, 42);
             this.labelCP.TabIndex = 8;
             this.labelCP.Text = "&Code page:";
             this.labelCP.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -381,39 +392,39 @@ private void InitializeComponent()
             // 
             // textBoxCP
             // 
-            this.textBoxCP.Location = new System.Drawing.Point(200, 120);
+            this.textBoxCP.Location = new System.Drawing.Point(400, 222);
             this.textBoxCP.Name = "textBoxCP";
-            this.textBoxCP.Size = new System.Drawing.Size(56, 20);
+            this.textBoxCP.Size = new System.Drawing.Size(112, 31);
             this.textBoxCP.TabIndex = 9;
-            this.textBoxCP.Text = "";
             this.toolTips.SetToolTip(this.textBoxCP, "Enter the code page used by this legacy font");
             this.textBoxCP.Visible = false;
             this.textBoxCP.TextChanged += new System.EventHandler(this.textBoxCP_TextChanged);
             // 
             // listBoxFontSize
             // 
+            this.listBoxFontSize.ItemHeight = 25;
             this.listBoxFontSize.Items.AddRange(new object[] {
-                                                                 "8",
-                                                                 "9",
-                                                                 "10",
-                                                                 "10.5",
-                                                                 "11",
-                                                                 "12",
-                                                                 "14",
-                                                                 "16",
-                                                                 "18",
-                                                                 "20",
-                                                                 "22",
-                                                                 "24",
-                                                                 "26",
-                                                                 "28",
-                                                                 "36",
-                                                                 "48",
-                                                                 "72"});
-            this.listBoxFontSize.Location = new System.Drawing.Point(272, 88);
+            "8",
+            "9",
+            "10",
+            "10.5",
+            "11",
+            "12",
+            "14",
+            "16",
+            "18",
+            "20",
+            "22",
+            "24",
+            "26",
+            "28",
+            "36",
+            "48",
+            "72"});
+            this.listBoxFontSize.Location = new System.Drawing.Point(544, 162);
             this.listBoxFontSize.Name = "listBoxFontSize";
             this.listBoxFontSize.ScrollAlwaysVisible = true;
-            this.listBoxFontSize.Size = new System.Drawing.Size(72, 82);
+            this.listBoxFontSize.Size = new System.Drawing.Size(144, 129);
             this.listBoxFontSize.TabIndex = 6;
             this.toolTips.SetToolTip(this.listBoxFontSize, "Choose the font size");
             this.listBoxFontSize.SelectedIndexChanged += new System.EventHandler(this.listBoxFontSize_SelectedIndexChanged);
@@ -427,10 +438,10 @@ private void InitializeComponent()
             // contextMenu
             // 
             this.contextMenu.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
-                                                                                        this.menuItemClick,
-                                                                                        this.menuItemDelete,
-                                                                                        this.menuItemDeleteAll,
-                                                                                        this.menuItemEdit});
+            this.menuItemClick,
+            this.menuItemDelete,
+            this.menuItemDeleteAll,
+            this.menuItemEdit});
             // 
             // menuItemClick
             // 
@@ -459,18 +470,29 @@ private void InitializeComponent()
             // 
             // labelInstructions
             // 
-            this.labelInstructions.Location = new System.Drawing.Point(32, 64);
+            this.labelInstructions.Location = new System.Drawing.Point(64, 118);
             this.labelInstructions.Name = "labelInstructions";
-            this.labelInstructions.Size = new System.Drawing.Size(336, 64);
+            this.labelInstructions.Size = new System.Drawing.Size(672, 118);
             this.labelInstructions.TabIndex = 13;
             this.labelInstructions.Text = "Fill in the details below and click the Add New Project button.";
             // 
+            // checkBoxRtL
+            // 
+            this.checkBoxRtL.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.checkBoxRtL.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.checkBoxRtL.Location = new System.Drawing.Point(37, 272);
+            this.checkBoxRtL.Name = "checkBoxRtL";
+            this.checkBoxRtL.Size = new System.Drawing.Size(195, 44);
+            this.checkBoxRtL.TabIndex = 15;
+            this.checkBoxRtL.Text = "&Right-to-Left";
+            this.toolTips.SetToolTip(this.checkBoxRtL, "Check this if the data is right-to-left");
+            // 
             // LoginSF
             // 
             this.AcceptButton = this.buttonOK;
-            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+            this.AutoScaleBaseSize = new System.Drawing.Size(10, 24);
             this.CancelButton = this.buttonCancel;
-            this.ClientSize = new System.Drawing.Size(392, 502);
+            this.ClientSize = new System.Drawing.Size(788, 981);
             this.Controls.Add(this.checkedListBoxProjects);
             this.Controls.Add(this.labelName);
             this.Controls.Add(this.textBoxNewProjectName);
@@ -482,7 +504,9 @@ private void InitializeComponent()
             this.Name = "LoginSF";
             this.Text = "Choose or Add New Fix Spelling Project";
             this.groupBoxNewProject.ResumeLayout(false);
+            this.groupBoxNewProject.PerformLayout();
             this.ResumeLayout(false);
+            this.PerformLayout();
 
         }
 		#endregion
@@ -721,7 +745,9 @@ private void buttonAddNewProject_Click(object sender, System.EventArgs e)
 
             // get the delimiter for word boundaries and disallow the /"/ character
             m_strWordBoundaryDelimiter = this.textBoxWordBoundaryDelimiter.Text;
-            if( m_strWordBoundaryDelimiter.IndexOf('"') != -1 )
+            m_isRightToleft = checkBoxRtL.Checked;
+
+            if ( m_strWordBoundaryDelimiter.IndexOf('"') != -1 )
             {
                 MessageBox.Show("Can't use the double-quote character for the word boundary delimiter",SpellingFixerEC.cstrCaption);
                 return;
@@ -851,6 +877,7 @@ private void buttonAddNewProject_Click(object sender, System.EventArgs e)
             // add this 'displaying font' information to the converter as properties/attributes
             ECAttributes aECAttrs = aECs.Attributes(strEncConverterName,AttributeType.Converter);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeFontToUse,font.Name);
+            aECAttrs.Add(SpellingFixerEC.cstrAttributeFontRightToLeft, m_isRightToleft);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeFontSizeToUse, font.Size);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeWordBoundaryDelimiter, m_strWordBoundaryDelimiter);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeNonWordChars, m_strNonWordCharacters);
@@ -948,7 +975,17 @@ internal bool LoadProject(string strProjectName)
         {
             // get the EncConverter that should have been added above by 'AddNewProject' button
             EncConverters aECs = new EncConverters();
-            IEncConverter aEC = aECs[FullName(strProjectName)];
+            var converterName = strProjectName;
+            if (strProjectName.StartsWith(SpellingFixerEC.cstrSFConverterPrefix))
+            {
+                strProjectName = strProjectName.Substring(SpellingFixerEC.cstrSFConverterPrefix.Length);
+            }
+            else
+            {
+                converterName = FullName(strProjectName);
+            }
+
+            IEncConverter aEC = aECs[converterName];
             if( aEC != null )
             {
                 m_strEncConverterName = aEC.Name;
@@ -956,6 +993,7 @@ internal bool LoadProject(string strProjectName)
                 ECAttributes aECAttrs = aECs.Attributes(aEC.Name,AttributeType.Converter);
                 string strFontName = aECAttrs[SpellingFixerEC.cstrAttributeFontToUse];
                 string sFontSize = aECAttrs[SpellingFixerEC.cstrAttributeFontSizeToUse];
+                m_isRightToleft = aECAttrs.ContainsKey(SpellingFixerEC.cstrAttributeFontRightToLeft) && (aECAttrs[SpellingFixerEC.cstrAttributeFontRightToLeft] == "true");
                 m_strWordBoundaryDelimiter = aECAttrs[SpellingFixerEC.cstrAttributeWordBoundaryDelimiter];
                 m_strNonWordCharacters = aECAttrs[SpellingFixerEC.cstrAttributeNonWordChars];
 
@@ -992,7 +1030,7 @@ internal bool LoadProject(string strProjectName)
                     m_cp = aECs.CodePage(strFontName);
 
                 RegistryKey keyLastSFProject = Registry.CurrentUser.CreateSubKey(cstrProjectMemoryKey);
-                keyLastSFProject.SetValue(cstrProjectMostRecentProject,strProjectName);
+                keyLastSFProject.SetValue(cstrProjectMostRecentProject, strProjectName);
                 return true;
             }
 
@@ -1131,6 +1169,7 @@ private void menuItemEdit_Click(object sender, System.EventArgs e)
 
                     string strFontName = aECAttrs[SpellingFixerEC.cstrAttributeFontToUse];
                     string sFontSize = aECAttrs[SpellingFixerEC.cstrAttributeFontSizeToUse];
+                    m_isRightToleft = aECAttrs.ContainsKey(SpellingFixerEC.cstrAttributeFontRightToLeft) && (aECAttrs[SpellingFixerEC.cstrAttributeFontRightToLeft] == "true");
                     m_strWordBoundaryDelimiter = aECAttrs[SpellingFixerEC.cstrAttributeWordBoundaryDelimiter];
                     m_strNonWordCharacters = aECAttrs[SpellingFixerEC.cstrAttributeNonWordChars];
 
@@ -1161,6 +1200,8 @@ private void DoEdit(EncConverters aECs, IEncConverter aEC, string strProjectName
                 this.textBoxCP.Text = aECs.CodePage(strFontName).ToString();
             }
 
+            checkBoxRtL.Checked = m_isRightToleft;
+
             // update the "Add New Project" button to say "Update Project"
             this.groupBoxNewProject.Text = "Edit Project Settings";
             this.buttonAddNewProject.Text = "Update &Project";
diff --git a/src/SpellingFixerEC/LoginSF.resx b/src/SpellingFixerEC/LoginSF.resx
index 1fb7e94a..d1a32f38 100644
--- a/src/SpellingFixerEC/LoginSF.resx
+++ b/src/SpellingFixerEC/LoginSF.resx
@@ -3,7 +3,7 @@
   <!-- 
     Microsoft ResX Schema 
     
-    Version 1.3
+    Version 2.0
     
     The primary goals of this format is to allow a simple XML format 
     that is mostly human readable. The generation and parsing of the 
@@ -14,16 +14,17 @@
     
     ... ado.net/XML headers & schema ...
     <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">1.3</resheader>
+    <resheader name="version">2.0</resheader>
     <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
     <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1">this is my long string</data>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
     <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
     <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        [base64 mime encoded serialized .NET Framework object]
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
     </data>
     <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        [base64 mime encoded string representing a byte array form of the .NET Framework object]
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
     </data>
                 
     There are any number of "resheader" rows that contain simple 
@@ -35,7 +36,7 @@
     Classes that don't support this are serialized and stored with the 
     mimetype set.
     
-    The mimetype is used forserialized objects, and tells the 
+    The mimetype is used for serialized objects, and tells the 
     ResXResourceReader how to depersist the object. This is currently not 
     extensible. For a given mimetype the value must be set accordingly:
     
@@ -45,7 +46,7 @@
     
     mimetype: application/x-microsoft.net.object.binary.base64
     value   : The object must be serialized with 
-            : System.Serialization.Formatters.Binary.BinaryFormatter
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
             : and then encoded with base64 encoding.
     
     mimetype: application/x-microsoft.net.object.soap.base64
@@ -59,18 +60,37 @@
             : and then encoded with base64 encoding.
     -->
   <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
     <xsd:element name="root" msdata:IsDataSet="true">
       <xsd:complexType>
         <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
           <xsd:element name="data">
             <xsd:complexType>
               <xsd:sequence>
                 <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                 <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
               </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
               <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
               <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
             </xsd:complexType>
           </xsd:element>
           <xsd:element name="resheader">
@@ -89,267 +109,28 @@
     <value>text/microsoft-resx</value>
   </resheader>
   <resheader name="version">
-    <value>1.3</value>
+    <value>2.0</value>
   </resheader>
   <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <data name="checkedListBoxProjects.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="checkedListBoxProjects.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="checkedListBoxProjects.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="buttonOK.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="buttonOK.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="buttonOK.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="buttonCancel.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="buttonCancel.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="buttonCancel.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelName.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="labelName.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelName.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxNewProjectName.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxNewProjectName.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="textBoxNewProjectName.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="checkBoxUnicode.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="checkBoxUnicode.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="checkBoxUnicode.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="buttonAddNewProject.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="buttonAddNewProject.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="buttonAddNewProject.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="groupBoxNewProject.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="groupBoxNewProject.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>8, 8</value>
-  </data>
-  <data name="groupBoxNewProject.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </data>
-  <data name="groupBoxNewProject.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="groupBoxNewProject.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </data>
-  <data name="groupBoxNewProject.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxAddlPunctuation.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxAddlPunctuation.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="textBoxAddlPunctuation.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="label2.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="label2.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="label2.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxWordBoundaryDelimiter.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxWordBoundaryDelimiter.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxWordBoundaryDelimiter.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="label1.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="label1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="label1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelFont.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="labelFont.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelFont.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="comboBoxFont.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="comboBoxFont.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="comboBoxFont.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="labelFontSize.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="labelFontSize.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelFontSize.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelCP.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="labelCP.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelCP.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxCP.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="textBoxCP.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="textBoxCP.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="listBoxFontSize.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="listBoxFontSize.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="listBoxFontSize.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="toolTips.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="toolTips.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+  <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>17, 17</value>
+  </metadata>
+  <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <data name="textBoxWordBoundaryDelimiter.ToolTip" xml:space="preserve">
+    <value>Enter the character(s) to use as a word boundary delimiter (e.g. with a delimiter of "#", you can enter the "bad spelling" words like: #car#, which will only match if the search string is "car", but not "cars" or "sportscar")</value>
   </data>
-  <data name="toolTips.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="contextMenu.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="contextMenu.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+  <metadata name="contextMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>107, 17</value>
-  </data>
-  <data name="contextMenu.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemClick.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemClick.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemDelete.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemDelete.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemDeleteAll.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemDeleteAll.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemEdit.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="menuItemEdit.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelInstructions.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="labelInstructions.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="labelInstructions.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>(Default)</value>
-  </data>
-  <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>False</value>
-  </data>
-  <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>8, 8</value>
-  </data>
-  <data name="$this.Name">
-    <value>LoginSF</value>
-  </data>
-  <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </data>
-  <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>80</value>
-  </data>
-  <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </data>
-  <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>Private</value>
-  </data>
-  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         AAABAAIAICAQAAAAAADoAgAAJgAAABAQEAAAAAAAKAEAAA4DAAAoAAAAIAAAAEAAAAABAAQAAAAAAIAC
         AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
diff --git a/src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs b/src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs
new file mode 100644
index 00000000..ff645da9
--- /dev/null
+++ b/src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs
@@ -0,0 +1,285 @@
+namespace SpellingFixerEC
+{
+    partial class QueryFindReplaceDialog
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(QueryFindReplaceDialog));
+            this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
+            this.labelFind = new System.Windows.Forms.Label();
+            this.textBoxFindWord = new SilEncConverters40.EcTextBox();
+            this.labelReplace = new System.Windows.Forms.Label();
+            this.textBoxReplaceWord = new SilEncConverters40.EcTextBox();
+            this.groupBoxWordBoundaries = new System.Windows.Forms.GroupBox();
+            this.checkBoxWordFinal = new System.Windows.Forms.CheckBox();
+            this.checkBoxWordInitial = new System.Windows.Forms.CheckBox();
+            this.labelUnicodeCodes = new System.Windows.Forms.Label();
+            this.labelAddedFromOriginalWord = new System.Windows.Forms.Label();
+            this.textBoxOriginalWord = new System.Windows.Forms.TextBox();
+            this.buttonDelete = new System.Windows.Forms.Button();
+            this.buttonOk = new System.Windows.Forms.Button();
+            this.buttonCancel = new System.Windows.Forms.Button();
+            this.textBoxWordBoundaryFindText = new System.Windows.Forms.TextBox();
+            this.toolTip = new System.Windows.Forms.ToolTip(this.components);
+            this.tableLayoutPanel.SuspendLayout();
+            this.groupBoxWordBoundaries.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel
+            // 
+            this.tableLayoutPanel.ColumnCount = 5;
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel.Controls.Add(this.labelFind, 0, 0);
+            this.tableLayoutPanel.Controls.Add(this.textBoxFindWord, 1, 0);
+            this.tableLayoutPanel.Controls.Add(this.labelReplace, 0, 1);
+            this.tableLayoutPanel.Controls.Add(this.textBoxReplaceWord, 1, 1);
+            this.tableLayoutPanel.Controls.Add(this.groupBoxWordBoundaries, 0, 2);
+            this.tableLayoutPanel.Controls.Add(this.labelUnicodeCodes, 0, 3);
+            this.tableLayoutPanel.Controls.Add(this.labelAddedFromOriginalWord, 0, 4);
+            this.tableLayoutPanel.Controls.Add(this.textBoxOriginalWord, 2, 4);
+            this.tableLayoutPanel.Controls.Add(this.buttonDelete, 0, 5);
+            this.tableLayoutPanel.Controls.Add(this.buttonOk, 3, 5);
+            this.tableLayoutPanel.Controls.Add(this.buttonCancel, 4, 5);
+            this.tableLayoutPanel.Controls.Add(this.textBoxWordBoundaryFindText, 2, 2);
+            this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel.Name = "tableLayoutPanel";
+            this.tableLayoutPanel.Padding = new System.Windows.Forms.Padding(25);
+            this.tableLayoutPanel.RowCount = 6;
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel.Size = new System.Drawing.Size(993, 598);
+            this.tableLayoutPanel.TabIndex = 0;
+            // 
+            // labelFind
+            // 
+            this.labelFind.Anchor = System.Windows.Forms.AnchorStyles.Right;
+            this.labelFind.AutoSize = true;
+            this.labelFind.Location = new System.Drawing.Point(94, 31);
+            this.labelFind.Name = "labelFind";
+            this.labelFind.Size = new System.Drawing.Size(60, 25);
+            this.labelFind.TabIndex = 0;
+            this.labelFind.Text = "Find:";
+            // 
+            // textBoxFindWord
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.textBoxFindWord, 4);
+            this.textBoxFindWord.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.textBoxFindWord.Location = new System.Drawing.Point(160, 28);
+            this.textBoxFindWord.Name = "textBoxFindWord";
+            this.textBoxFindWord.Size = new System.Drawing.Size(805, 31);
+            this.textBoxFindWord.TabIndex = 3;
+            this.toolTip.SetToolTip(this.textBoxFindWord, "The word (or part of a word) to replace");
+            this.textBoxFindWord.TextChanged += new System.EventHandler(this.textBoxFindWord_TextChanged);
+            this.textBoxFindWord.Enter += new System.EventHandler(this.textBoxFindWord_Enter);
+            // 
+            // labelReplace
+            // 
+            this.labelReplace.Anchor = System.Windows.Forms.AnchorStyles.Right;
+            this.labelReplace.AutoSize = true;
+            this.labelReplace.Location = new System.Drawing.Point(57, 68);
+            this.labelReplace.Name = "labelReplace";
+            this.labelReplace.Size = new System.Drawing.Size(97, 25);
+            this.labelReplace.TabIndex = 1;
+            this.labelReplace.Text = "Replace:";
+            // 
+            // textBoxReplaceWord
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.textBoxReplaceWord, 4);
+            this.textBoxReplaceWord.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.textBoxReplaceWord.Location = new System.Drawing.Point(160, 65);
+            this.textBoxReplaceWord.Name = "textBoxReplaceWord";
+            this.textBoxReplaceWord.Size = new System.Drawing.Size(805, 31);
+            this.textBoxReplaceWord.TabIndex = 4;
+            this.toolTip.SetToolTip(this.textBoxReplaceWord, "The replacement word");
+            this.textBoxReplaceWord.TextChanged += new System.EventHandler(this.textBoxReplaceWord_TextChanged);
+            this.textBoxReplaceWord.Enter += new System.EventHandler(this.textBoxReplaceWord_Enter);
+            // 
+            // groupBoxWordBoundaries
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.groupBoxWordBoundaries, 2);
+            this.groupBoxWordBoundaries.Controls.Add(this.checkBoxWordFinal);
+            this.groupBoxWordBoundaries.Controls.Add(this.checkBoxWordInitial);
+            this.groupBoxWordBoundaries.Location = new System.Drawing.Point(28, 102);
+            this.groupBoxWordBoundaries.Name = "groupBoxWordBoundaries";
+            this.groupBoxWordBoundaries.Padding = new System.Windows.Forms.Padding(10);
+            this.groupBoxWordBoundaries.Size = new System.Drawing.Size(301, 101);
+            this.groupBoxWordBoundaries.TabIndex = 10;
+            this.groupBoxWordBoundaries.TabStop = false;
+            this.groupBoxWordBoundaries.Text = "Word Boundaries";
+            // 
+            // checkBoxWordFinal
+            // 
+            this.checkBoxWordFinal.AutoSize = true;
+            this.checkBoxWordFinal.Location = new System.Drawing.Point(187, 37);
+            this.checkBoxWordFinal.Name = "checkBoxWordFinal";
+            this.checkBoxWordFinal.Size = new System.Drawing.Size(82, 29);
+            this.checkBoxWordFinal.TabIndex = 1;
+            this.checkBoxWordFinal.Text = "End";
+            this.checkBoxWordFinal.UseVisualStyleBackColor = true;
+            this.checkBoxWordFinal.CheckedChanged += new System.EventHandler(this.checkBoxWordBoundary_CheckedChanged);
+            // 
+            // checkBoxWordInitial
+            // 
+            this.checkBoxWordInitial.AutoSize = true;
+            this.checkBoxWordInitial.Location = new System.Drawing.Point(28, 37);
+            this.checkBoxWordInitial.Name = "checkBoxWordInitial";
+            this.checkBoxWordInitial.Size = new System.Drawing.Size(140, 29);
+            this.checkBoxWordInitial.TabIndex = 0;
+            this.checkBoxWordInitial.Text = "Beginning";
+            this.toolTip.SetToolTip(this.checkBoxWordInitial, "Click to force the find to use use an initial ");
+            this.checkBoxWordInitial.UseVisualStyleBackColor = true;
+            this.checkBoxWordInitial.CheckedChanged += new System.EventHandler(this.checkBoxWordBoundary_CheckedChanged);
+            // 
+            // labelUnicodeCodes
+            // 
+            this.labelUnicodeCodes.AutoSize = true;
+            this.labelUnicodeCodes.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
+            this.tableLayoutPanel.SetColumnSpan(this.labelUnicodeCodes, 5);
+            this.labelUnicodeCodes.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.labelUnicodeCodes.Location = new System.Drawing.Point(28, 206);
+            this.labelUnicodeCodes.Name = "labelUnicodeCodes";
+            this.labelUnicodeCodes.Padding = new System.Windows.Forms.Padding(10);
+            this.labelUnicodeCodes.Size = new System.Drawing.Size(937, 278);
+            this.labelUnicodeCodes.TabIndex = 5;
+            this.labelUnicodeCodes.Text = "labelUnicodeCodes";
+            this.toolTip.SetToolTip(this.labelUnicodeCodes, "This area shows the Unicode code point values for the characters in the box above" +
+        " which has focus. You can use this to see hidden characters (e.g. zero width joi" +
+        "ner).");
+            // 
+            // labelAddedFromOriginalWord
+            // 
+            this.labelAddedFromOriginalWord.AutoSize = true;
+            this.tableLayoutPanel.SetColumnSpan(this.labelAddedFromOriginalWord, 2);
+            this.labelAddedFromOriginalWord.Location = new System.Drawing.Point(28, 484);
+            this.labelAddedFromOriginalWord.Name = "labelAddedFromOriginalWord";
+            this.labelAddedFromOriginalWord.Size = new System.Drawing.Size(275, 25);
+            this.labelAddedFromOriginalWord.TabIndex = 6;
+            this.labelAddedFromOriginalWord.Text = "Added while Clipboard had:";
+            this.toolTip.SetToolTip(this.labelAddedFromOriginalWord, "This word was on the clipboard when the dialog opened.");
+            this.labelAddedFromOriginalWord.Visible = false;
+            // 
+            // textBoxOriginalWord
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.textBoxOriginalWord, 3);
+            this.textBoxOriginalWord.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.textBoxOriginalWord.Location = new System.Drawing.Point(335, 487);
+            this.textBoxOriginalWord.Name = "textBoxOriginalWord";
+            this.textBoxOriginalWord.ReadOnly = true;
+            this.textBoxOriginalWord.Size = new System.Drawing.Size(630, 31);
+            this.textBoxOriginalWord.TabIndex = 7;
+            this.toolTip.SetToolTip(this.textBoxOriginalWord, "Word originally on the Clipboard when this dialog opened.");
+            this.textBoxOriginalWord.Visible = false;
+            // 
+            // buttonDelete
+            // 
+            this.buttonDelete.DialogResult = System.Windows.Forms.DialogResult.Abort;
+            this.buttonDelete.Location = new System.Drawing.Point(28, 524);
+            this.buttonDelete.Name = "buttonDelete";
+            this.buttonDelete.Size = new System.Drawing.Size(126, 46);
+            this.buttonDelete.TabIndex = 2;
+            this.buttonDelete.Text = "Delete";
+            this.buttonDelete.UseVisualStyleBackColor = true;
+            this.buttonDelete.Click += new System.EventHandler(this.buttonDelete_Click);
+            // 
+            // buttonOk
+            // 
+            this.buttonOk.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.buttonOk.Location = new System.Drawing.Point(713, 524);
+            this.buttonOk.Name = "buttonOk";
+            this.buttonOk.Size = new System.Drawing.Size(123, 46);
+            this.buttonOk.TabIndex = 8;
+            this.buttonOk.Text = "OK";
+            this.buttonOk.UseVisualStyleBackColor = true;
+            // 
+            // buttonCancel
+            // 
+            this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.buttonCancel.Location = new System.Drawing.Point(842, 524);
+            this.buttonCancel.Name = "buttonCancel";
+            this.buttonCancel.Size = new System.Drawing.Size(123, 46);
+            this.buttonCancel.TabIndex = 8;
+            this.buttonCancel.Text = "Cancel";
+            this.buttonCancel.UseVisualStyleBackColor = true;
+            // 
+            // textBoxWordBoundaryFindText
+            // 
+            this.textBoxWordBoundaryFindText.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.tableLayoutPanel.SetColumnSpan(this.textBoxWordBoundaryFindText, 3);
+            this.textBoxWordBoundaryFindText.Location = new System.Drawing.Point(335, 137);
+            this.textBoxWordBoundaryFindText.Name = "textBoxWordBoundaryFindText";
+            this.textBoxWordBoundaryFindText.ReadOnly = true;
+            this.textBoxWordBoundaryFindText.Size = new System.Drawing.Size(630, 31);
+            this.textBoxWordBoundaryFindText.TabIndex = 2;
+            // 
+            // QueryFindReplaceDialog
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 25F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(993, 598);
+            this.Controls.Add(this.tableLayoutPanel);
+            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+            this.Name = "QueryFindReplaceDialog";
+            this.Text = "Find & Replace (CC)";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.QueryFindReplaceDialog_FormClosing);
+            this.tableLayoutPanel.ResumeLayout(false);
+            this.tableLayoutPanel.PerformLayout();
+            this.groupBoxWordBoundaries.ResumeLayout(false);
+            this.groupBoxWordBoundaries.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
+        private System.Windows.Forms.Label labelFind;
+        private System.Windows.Forms.Label labelReplace;
+        private System.Windows.Forms.Button buttonDelete;
+        private SilEncConverters40.EcTextBox textBoxFindWord;
+        private System.Windows.Forms.ToolTip toolTip;
+        private SilEncConverters40.EcTextBox textBoxReplaceWord;
+        private System.Windows.Forms.Label labelUnicodeCodes;
+        private System.Windows.Forms.Label labelAddedFromOriginalWord;
+        private System.Windows.Forms.TextBox textBoxOriginalWord;
+        private System.Windows.Forms.Button buttonOk;
+        private System.Windows.Forms.Button buttonCancel;
+        private System.Windows.Forms.CheckBox checkBoxWordInitial;
+        private System.Windows.Forms.CheckBox checkBoxWordFinal;
+        private System.Windows.Forms.GroupBox groupBoxWordBoundaries;
+        private System.Windows.Forms.TextBox textBoxWordBoundaryFindText;
+    }
+}
\ No newline at end of file
diff --git a/src/SpellingFixerEC/QueryFindReplaceDialog.cs b/src/SpellingFixerEC/QueryFindReplaceDialog.cs
new file mode 100644
index 00000000..e199da1c
--- /dev/null
+++ b/src/SpellingFixerEC/QueryFindReplaceDialog.cs
@@ -0,0 +1,190 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace SpellingFixerEC
+{
+    public partial class QueryFindReplaceDialog : Form
+    {
+        private string _findWhat;
+        public string FindWhat 
+        {
+            get
+            {
+                return $"{BoundaryInitial}{_findWhat}{BoundaryFinal}";
+            }
+            set 
+            {
+                _findWhat = value;
+            }
+        }
+        public string ReplaceWith { get; set; }
+        public string BoundaryCharacter { get; set; }
+
+        private String BoundaryInitial
+        {
+            get
+            {
+                return (_isBoundaryInitial) ? BoundaryCharacter : String.Empty;
+            }
+        }
+
+        private String BoundaryFinal
+        {
+            get
+            {
+                return (_isBoundaryFinal) ? BoundaryCharacter : String.Empty;
+            }
+        }
+
+        public QueryFindReplaceDialog(Font font)
+        {
+            InitializeComponent();
+
+            textBoxFindWord.Font = font = 
+                textBoxOriginalWord.Font =
+                textBoxWordBoundaryFindText.Font = 
+                textBoxReplaceWord.Font = font;
+        }
+
+        public DialogResult ShowDialog(string findWhat, string replaceWith, string originalWord,
+                                bool isRightToLeft, string boundaryCharacter, bool isShowDelete)
+        {
+            if (findWhat?.StartsWith(boundaryCharacter) ?? false)
+            {
+                _isBoundaryInitial = checkBoxWordInitial.Checked = true;
+                findWhat = findWhat.Substring(1);
+            }
+
+            if (findWhat?.EndsWith(boundaryCharacter) ?? false)
+            {
+                _isBoundaryFinal = checkBoxWordFinal.Checked = true;
+                findWhat = findWhat.Substring(0, findWhat.Length - 1);
+            }
+
+            if (originalWord?.StartsWith(boundaryCharacter) ?? false)
+            {
+                originalWord = originalWord.Substring(1);
+            }
+
+            if (originalWord?.EndsWith(boundaryCharacter) ?? false)
+            {
+                originalWord = originalWord.Substring(0, originalWord.Length - 1);
+            }
+
+            FindWhat = textBoxFindWord.Text = findWhat;
+            textBoxReplaceWord.Text = replaceWith;
+            textBoxOriginalWord.Text = originalWord;
+            BoundaryCharacter = boundaryCharacter;
+
+            if (isRightToLeft)
+            {
+                textBoxFindWord.RightToLeft = RightToLeft.Yes;
+                textBoxReplaceWord.RightToLeft = RightToLeft.Yes;
+                textBoxOriginalWord.RightToLeft = RightToLeft.Yes;
+                textBoxWordBoundaryFindText.RightToLeft = RightToLeft.Yes;
+            }
+
+            buttonDelete.Visible = isShowDelete;
+
+            if (findWhat != replaceWith)
+            {
+                this.Text = "Existing Replacement Rule";
+                if (!String.IsNullOrEmpty(originalWord))
+                {
+                    labelAddedFromOriginalWord.Visible =
+                        textBoxOriginalWord.Visible = true;
+                    this.textBoxOriginalWord.Text = originalWord;
+                }
+            }
+
+            UpdateFindWhatDisplay();
+            var res = base.ShowDialog();
+            return res;
+        }
+
+        private void UpdateUniCodes(string strInputString)
+        {
+            int nLenString = strInputString.Length;
+
+            string strWhole = null, strPiece = null, strUPiece = null;
+            foreach (char ch in strInputString)
+            {
+                if (ch == 0)   // sometimes it's null (esp. for utf32)
+                    strPiece = "nul (u0000)  ";
+                else
+                {
+                    strUPiece = String.Format("{0:X}", (int)ch);
+
+                    // left pad with 0's (there may be a better way to do this, but 
+                    //  I don't know what it is)
+                    while (strUPiece.Length < 4) strUPiece = "0" + strUPiece;
+
+                    strPiece = String.Format("{0:#} (u{1,4})  ", ch, strUPiece);
+                }
+                strWhole += strPiece;
+            }
+
+            labelUnicodeCodes.Text = strWhole;
+        }
+
+        private void checkBoxWordBoundary_CheckedChanged(object sender, EventArgs e)
+        {
+            UpdateFindWhatDisplay();
+        }
+
+        private void textBoxFindWord_TextChanged(object sender, EventArgs e)
+        {
+            FindWhat = textBoxFindWord.Text;
+            UpdateFindWhatDisplay();
+            UpdateUniCodes(textBoxFindWord.Text);
+        }
+
+        private void textBoxReplaceWord_TextChanged(object sender, EventArgs e)
+        {
+            UpdateUniCodes(textBoxReplaceWord.Text);
+            ReplaceWith = textBoxReplaceWord.Text;
+        }
+
+        private void textBoxFindWord_Enter(object sender, EventArgs e)
+        {
+            UpdateUniCodes(textBoxFindWord.Text);
+        }
+
+        private void textBoxReplaceWord_Enter(object sender, EventArgs e)
+        {
+            UpdateUniCodes(textBoxReplaceWord.Text);
+        }
+
+        private bool _isBoundaryInitial { get; set; }
+        private bool _isBoundaryFinal { get; set; }
+
+        private void UpdateFindWhatDisplay()
+        {
+            _isBoundaryInitial = checkBoxWordInitial.Checked;
+            _isBoundaryFinal = checkBoxWordFinal.Checked;
+
+            textBoxWordBoundaryFindText.Text = FindWhat;
+        }
+
+        private void QueryFindReplaceDialog_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (String.IsNullOrEmpty(FindWhat) && (DialogResult == DialogResult.OK))
+            {
+                MessageBox.Show("You can't have an empty value for the \"Find What\" text. Click Cancel if you didn't mean to add a rule.", SpellingFixerEC.cstrCaption);
+                e.Cancel = true;
+            }
+        }
+
+        private void buttonDelete_Click(object sender, EventArgs e)
+        {
+            Close();    // button has DialogResult.Abort associated w/ it, which triggers the caller to delete
+        }
+    }
+}
diff --git a/src/SpellingFixerEC/QueryGoodSpelling.resx b/src/SpellingFixerEC/QueryFindReplaceDialog.resx
similarity index 92%
rename from src/SpellingFixerEC/QueryGoodSpelling.resx
rename to src/SpellingFixerEC/QueryFindReplaceDialog.resx
index 42f91293..dc496dc4 100644
--- a/src/SpellingFixerEC/QueryGoodSpelling.resx
+++ b/src/SpellingFixerEC/QueryFindReplaceDialog.resx
@@ -1,149 +1,146 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <metadata name="helpProvider.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>17, 17</value>
-  </metadata>
-  <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>130, 17</value>
-  </metadata>
-  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        AAABAAIAICAQAAAAAADoAgAAJgAAABAQEAAAAAAAKAEAAA4DAAAoAAAAIAAAAEAAAAABAAQAAAAAAIAC
-        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
-        AAAA//8A/wAAAP8A/wD//wAA////AHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3
-        d3f3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3
-        d3d3d//////3d3d3d3d3d3d3d3f//////3d3d3d3d3d3d3d3//////d3d3d3d3d3d3d3d3d3f/93d3d3
-        d3d3d3d3d3d3d//3d3d3d3d3d3d3d3d3d3//d3d3d3d3d3d3d3d3d3d393d3d3d3d3d3d3d3d3d3d3d3
-        d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7u7d3e7u7u3d3u7u7t3e7u7u3d3u7u7t3d7u7u7d3u7d3d3d3d3
-        d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3f3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3d3
-        d3d3d3//d3d3d3d3d3d3d3d3d3f/93d3d3d3d3d3d3d3d3d//////3d3d3d3d3d3d3d3//////93d3d3
-        d3d3d3d3d3//////d3d3d3d3d3d3d3d3//d3d3d3d3d3d3d3d3d3d3//d3d3d3d3d3d3d3d3d3d3//d3
-        d3d3d3d3d3d3d3d3d393d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3AAAAAAAA
-        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-        AAAoAAAAEAAAACAAAAABAAQAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA
-        AACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AHd3d3d3d3d3d3d3d/d3
-        d3d3d3d3f3d3d3d3d///93d3d3d3d393d3d3d3d393d3d3d3d3d3d3d3u7t3u7t3u7u7u3e7u3e7u3d3
-        d3d3d3d3d3d3f3d3d3d3d3f3d3d3d3d3f///d3d3d3d393d3d3d3d3d/d3d3d3d3d3d3d3d3AAAAAAAA
-        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-</value>
-  </data>
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        AAABAAIAICAQAAAAAADoAgAAJgAAABAQEAAAAAAAKAEAAA4DAAAoAAAAIAAAAEAAAAABAAQAAAAAAIAC
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
+        AAAA//8A/wAAAP8A/wD//wAA////AHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3
+        d3f3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3
+        d3d3d//////3d3d3d3d3d3d3d3f//////3d3d3d3d3d3d3d3//////d3d3d3d3d3d3d3d3d3f/93d3d3
+        d3d3d3d3d3d3d//3d3d3d3d3d3d3d3d3d3//d3d3d3d3d3d3d3d3d3d393d3d3d3d3d3d3d3d3d3d3d3
+        d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7u7d3e7u7u3d3u7u7t3e7u7u3d3u7u7t3d7u7u7d3u7d3d3d3d3
+        d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3f3d3d3d3d3d3d3d3d3d3d//3d3d3d3d3d3d3
+        d3d3d3//d3d3d3d3d3d3d3d3d3f/93d3d3d3d3d3d3d3d3d//////3d3d3d3d3d3d3d3//////93d3d3
+        d3d3d3d3d3//////d3d3d3d3d3d3d3d3//d3d3d3d3d3d3d3d3d3d3//d3d3d3d3d3d3d3d3d3d3//d3
+        d3d3d3d3d3d3d3d3d393d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3AAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAoAAAAEAAAACAAAAABAAQAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA
+        AACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AHd3d3d3d3d3d3d3d/d3
+        d3d3d3d3f3d3d3d3d///93d3d3d3d393d3d3d3d393d3d3d3d3d3d3d3u7t3u7t3u7u7u3e7u3e7u3d3
+        d3d3d3d3d3d3f3d3d3d3d3f3d3d3d3d3f///d3d3d3d393d3d3d3d3d/d3d3d3d3d3d3d3d3AAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
+</value>
+  </data>
 </root>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/QueryGoodSpelling.cs b/src/SpellingFixerEC/QueryGoodSpelling.cs
deleted file mode 100644
index bcfa84ef..00000000
--- a/src/SpellingFixerEC/QueryGoodSpelling.cs
+++ /dev/null
@@ -1,367 +0,0 @@
-using System;
-using System.Drawing;
-using System.Collections;
-using System.ComponentModel;
-using System.Windows.Forms;
-using System.Runtime.InteropServices;   // for ComVisible
-using SilEncConverters40;
-
-namespace SpellingFixerEC
-{
-	/// <summary>
-	/// Summary description for QueryGoodSpelling.
-	/// </summary>
-	internal class QueryGoodSpelling : System.Windows.Forms.Form
-    {
-        private IContainer components;
-        private System.Windows.Forms.Label label1 = null;
-        private EcTextBox textBoxBadWord = null;
-        private System.Windows.Forms.Label label2 = null;
-        private EcTextBox textBoxReplacement = null;
-        private System.Windows.Forms.Button buttonOK = null;
-        private System.Windows.Forms.Button buttonCancel = null;
-        private string m_strGoodWord;
-        private System.Windows.Forms.Label labelUniCodes;
-        private System.Windows.Forms.Button buttonDelete;
-        private System.Windows.Forms.TextBox labelOriginalReason;
-        private System.Windows.Forms.Label labelOrigReasonLabel;
-        private TableLayoutPanel tableLayoutPanel;
-        private HelpProvider helpProvider;
-        private ToolTip toolTip;
-        private string m_strBadWord;    // in case we change it
-
-		public QueryGoodSpelling(Font font)
-		{
-			//
-			// Required for Windows Form Designer support
-			//
-			InitializeComponent();
-
-            textBoxBadWord.Font = font;
-            textBoxReplacement.Font = font;
-            labelOriginalReason.Font = font;
-
-            helpProvider.SetHelpString(this.textBoxBadWord, Properties.Resources.textBoxBadWordHelp);
-            helpProvider.SetHelpString(this.textBoxReplacement, Properties.Resources.textBoxReplacementHelp);
-        }
-
-        public DialogResult ShowDialog(string strBadWord, string strReplacement, string strOriginalWord, bool bShowDelete)
-        {
-            textBoxBadWord.Text = strBadWord;
-            textBoxReplacement.Text = strReplacement;
-
-            textBoxReplacement.Focus();
-            textBoxReplacement.SelectAll();
-
-            this.buttonDelete.Visible = bShowDelete;
-
-            if (strBadWord != strReplacement)
-            {
-                this.Text = "Existing Replacement Rule";
-                if (!String.IsNullOrEmpty(strOriginalWord))
-                {
-                    this.labelOrigReasonLabel.Visible = true;
-                    this.labelOriginalReason.Visible = true;
-                    this.labelOriginalReason.Text = strOriginalWord;
-                }
-            }
-
-            return base.ShowDialog();
-        }
-
-        public string   GoodSpelling
-        {
-            get { return m_strGoodWord; }
-        }
-
-        public string   BadSpelling
-        {
-            get { return m_strBadWord; }
-        }
-
-		/// <summary>
-		/// Clean up any resources being used.
-		/// </summary>
-		protected override void Dispose( bool disposing )
-		{
-			if( disposing )
-			{
-				if(components != null)
-				{
-					components.Dispose();
-				}
-			}
-			base.Dispose( disposing );
-		}
-
-		#region Windows Form Designer generated code
-		/// <summary>
-		/// Required method for Designer support - do not modify
-		/// the contents of this method with the code editor.
-		/// </summary>
-		private void InitializeComponent()
-		{
-            this.components = new System.ComponentModel.Container();
-            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(QueryGoodSpelling));
-            this.label1 = new System.Windows.Forms.Label();
-            this.label2 = new System.Windows.Forms.Label();
-            this.buttonOK = new System.Windows.Forms.Button();
-            this.buttonCancel = new System.Windows.Forms.Button();
-            this.labelUniCodes = new System.Windows.Forms.Label();
-            this.buttonDelete = new System.Windows.Forms.Button();
-            this.labelOriginalReason = new System.Windows.Forms.TextBox();
-            this.labelOrigReasonLabel = new System.Windows.Forms.Label();
-            this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
-            this.textBoxBadWord = new EcTextBox();
-            this.textBoxReplacement = new EcTextBox();
-            this.helpProvider = new System.Windows.Forms.HelpProvider();
-            this.toolTip = new System.Windows.Forms.ToolTip(this.components);
-            this.tableLayoutPanel.SuspendLayout();
-            this.SuspendLayout();
-            // 
-            // label1
-            // 
-            this.label1.Anchor = System.Windows.Forms.AnchorStyles.Right;
-            this.label1.AutoSize = true;
-            this.label1.Location = new System.Drawing.Point(28, 6);
-            this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(69, 13);
-            this.label1.TabIndex = 0;
-            this.label1.Text = "Bad Spelling:";
-            // 
-            // label2
-            // 
-            this.label2.Anchor = System.Windows.Forms.AnchorStyles.Right;
-            this.label2.AutoSize = true;
-            this.label2.Location = new System.Drawing.Point(24, 32);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(73, 13);
-            this.label2.TabIndex = 2;
-            this.label2.Text = "Replacement:";
-            // 
-            // buttonOK
-            // 
-            this.buttonOK.DialogResult = System.Windows.Forms.DialogResult.OK;
-            this.buttonOK.Location = new System.Drawing.Point(237, 244);
-            this.buttonOK.Name = "buttonOK";
-            this.buttonOK.Size = new System.Drawing.Size(61, 23);
-            this.buttonOK.TabIndex = 3;
-            this.buttonOK.Text = "OK";
-            this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click);
-            // 
-            // buttonCancel
-            // 
-            this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.buttonCancel.Location = new System.Drawing.Point(304, 244);
-            this.buttonCancel.Name = "buttonCancel";
-            this.buttonCancel.Size = new System.Drawing.Size(61, 23);
-            this.buttonCancel.TabIndex = 4;
-            this.buttonCancel.Text = "Cancel";
-            this.buttonCancel.Click += new System.EventHandler(this.buttonCancel_Click);
-            // 
-            // labelUniCodes
-            // 
-            this.labelUniCodes.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
-            this.tableLayoutPanel.SetColumnSpan(this.labelUniCodes, 4);
-            this.labelUniCodes.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.helpProvider.SetHelpString(this.labelUniCodes, "This area shows the Unicode code point values for the characters in the box above" +
-                    " which has focus. You can use this to see hidden characters (e.g. zero width joi" +
-                    "ner).");
-            this.labelUniCodes.Location = new System.Drawing.Point(3, 55);
-            this.labelUniCodes.Margin = new System.Windows.Forms.Padding(3);
-            this.labelUniCodes.Name = "labelUniCodes";
-            this.labelUniCodes.Padding = new System.Windows.Forms.Padding(3);
-            this.helpProvider.SetShowHelp(this.labelUniCodes, true);
-            this.labelUniCodes.Size = new System.Drawing.Size(362, 157);
-            this.labelUniCodes.TabIndex = 5;
-            this.labelUniCodes.Text = "labelUniCodes";
-            // 
-            // buttonDelete
-            // 
-            this.buttonDelete.DialogResult = System.Windows.Forms.DialogResult.Abort;
-            this.buttonDelete.Location = new System.Drawing.Point(3, 244);
-            this.buttonDelete.Name = "buttonDelete";
-            this.buttonDelete.Size = new System.Drawing.Size(67, 23);
-            this.buttonDelete.TabIndex = 6;
-            this.buttonDelete.Text = "Delete";
-            this.buttonDelete.Visible = false;
-            this.buttonDelete.Click += new System.EventHandler(this.buttonDelete_Click);
-            // 
-            // labelOriginalReason
-            // 
-            this.tableLayoutPanel.SetColumnSpan(this.labelOriginalReason, 3);
-            this.labelOriginalReason.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.labelOriginalReason.Location = new System.Drawing.Point(103, 218);
-            this.labelOriginalReason.Name = "labelOriginalReason";
-            this.labelOriginalReason.ReadOnly = true;
-            this.labelOriginalReason.Size = new System.Drawing.Size(262, 20);
-            this.labelOriginalReason.TabIndex = 7;
-            this.labelOriginalReason.Visible = false;
-            // 
-            // labelOrigReasonLabel
-            // 
-            this.labelOrigReasonLabel.Anchor = System.Windows.Forms.AnchorStyles.Right;
-            this.labelOrigReasonLabel.AutoSize = true;
-            this.labelOrigReasonLabel.Location = new System.Drawing.Point(3, 221);
-            this.labelOrigReasonLabel.Name = "labelOrigReasonLabel";
-            this.labelOrigReasonLabel.Size = new System.Drawing.Size(94, 13);
-            this.labelOrigReasonLabel.TabIndex = 8;
-            this.labelOrigReasonLabel.Text = "added while fixing:";
-            this.labelOrigReasonLabel.Visible = false;
-            // 
-            // tableLayoutPanel
-            // 
-            this.tableLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-                        | System.Windows.Forms.AnchorStyles.Left)
-                        | System.Windows.Forms.AnchorStyles.Right)));
-            this.tableLayoutPanel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
-            this.tableLayoutPanel.ColumnCount = 4;
-            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
-            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
-            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
-            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
-            this.tableLayoutPanel.Controls.Add(this.labelOriginalReason, 1, 3);
-            this.tableLayoutPanel.Controls.Add(this.textBoxBadWord, 1, 0);
-            this.tableLayoutPanel.Controls.Add(this.label2, 0, 1);
-            this.tableLayoutPanel.Controls.Add(this.labelUniCodes, 0, 2);
-            this.tableLayoutPanel.Controls.Add(this.buttonDelete, 0, 4);
-            this.tableLayoutPanel.Controls.Add(this.textBoxReplacement, 1, 1);
-            this.tableLayoutPanel.Controls.Add(this.buttonOK, 2, 4);
-            this.tableLayoutPanel.Controls.Add(this.label1, 0, 0);
-            this.tableLayoutPanel.Controls.Add(this.labelOrigReasonLabel, 0, 3);
-            this.tableLayoutPanel.Controls.Add(this.buttonCancel, 3, 4);
-            this.tableLayoutPanel.Location = new System.Drawing.Point(12, 12);
-            this.tableLayoutPanel.Name = "tableLayoutPanel";
-            this.tableLayoutPanel.RowCount = 5;
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.tableLayoutPanel.Size = new System.Drawing.Size(368, 270);
-            this.tableLayoutPanel.TabIndex = 9;
-            // 
-            // textBoxBadWord
-            // 
-            this.tableLayoutPanel.SetColumnSpan(this.textBoxBadWord, 3);
-            this.textBoxBadWord.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.helpProvider.SetHelpString(this.textBoxBadWord, "");
-            this.textBoxBadWord.Location = new System.Drawing.Point(103, 3);
-            this.textBoxBadWord.Name = "textBoxBadWord";
-            this.helpProvider.SetShowHelp(this.textBoxBadWord, true);
-            this.textBoxBadWord.Size = new System.Drawing.Size(262, 20);
-            this.textBoxBadWord.TabIndex = 1;
-            this.textBoxBadWord.Text = "textBoxBadWord";
-            this.toolTip.SetToolTip(this.textBoxBadWord, "Contains the bad spelling form");
-            this.textBoxBadWord.GotFocus += new System.EventHandler(this.textBoxBadWord_GotFocus);
-            this.textBoxBadWord.TextChanged += new System.EventHandler(this.textBoxBadWord_TextChanged);
-            // 
-            // textBoxReplacement
-            // 
-            this.tableLayoutPanel.SetColumnSpan(this.textBoxReplacement, 3);
-            this.textBoxReplacement.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.helpProvider.SetHelpString(this.textBoxReplacement, "");
-            this.textBoxReplacement.Location = new System.Drawing.Point(103, 29);
-            this.textBoxReplacement.Name = "textBoxReplacement";
-            this.helpProvider.SetShowHelp(this.textBoxReplacement, true);
-            this.textBoxReplacement.Size = new System.Drawing.Size(262, 20);
-            this.textBoxReplacement.TabIndex = 1;
-            this.textBoxReplacement.Text = "textBoxReplacement";
-            this.toolTip.SetToolTip(this.textBoxReplacement, "Contains the good spelling form (i.e. the replacment for when the bad spelling fo" +
-                    "rm occurs)");
-            this.textBoxReplacement.GotFocus += new System.EventHandler(this.textBoxReplacement_GotFocus);
-            this.textBoxReplacement.TextChanged += new System.EventHandler(this.textBoxReplacement_TextChanged);
-            // 
-            // QueryGoodSpelling
-            // 
-            this.AcceptButton = this.buttonOK;
-            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
-            this.ClientSize = new System.Drawing.Size(392, 294);
-            this.Controls.Add(this.tableLayoutPanel);
-            this.HelpButton = true;
-            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
-            this.MaximizeBox = false;
-            this.MinimizeBox = false;
-            this.Name = "QueryGoodSpelling";
-            this.Text = "Fix Spelling";
-            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.QueryGoodSpelling_FormClosing);
-            this.tableLayoutPanel.ResumeLayout(false);
-            this.tableLayoutPanel.PerformLayout();
-            this.ResumeLayout(false);
-
-        }
-		#endregion
-
-        private void buttonOK_Click(object sender, System.EventArgs e)
-        {
-            m_strGoodWord = this.textBoxReplacement.Text;
-            m_strBadWord = this.textBoxBadWord.Text;
-            this.Close();
-        }
-
-        private void QueryGoodSpelling_FormClosing(object sender, FormClosingEventArgs e)
-        {
-            if (String.IsNullOrEmpty(m_strBadWord) && (DialogResult == DialogResult.OK))
-            {
-                MessageBox.Show("You can't have an empty Bad Spelling form. Click Cancel if you didn't mean to add a rule.", SpellingFixerEC.cstrCaption);
-                e.Cancel = true;
-            }
-        }
-
-        private void buttonCancel_Click(object sender, System.EventArgs e)
-        {
-            // this.DialogResult = DialogResult.Cancel;
-            this.Close();
-        }
-
-        private void textBoxBadWord_GotFocus(object sender, EventArgs e)
-        {
-            UpdateUniCodes(this.textBoxBadWord.Text);
-        }
-
-        private void textBoxReplacement_GotFocus(object sender, EventArgs e)
-        {
-            UpdateUniCodes(this.textBoxReplacement.Text);
-        }
-
-        private void UpdateUniCodes(string strInputString)
-        {
-            int nLenString = strInputString.Length;
-
-            string strWhole = null, strPiece = null, strUPiece = null;
-            foreach(char ch in strInputString)
-            {
-                if( ch == 0 )   // sometimes it's null (esp. for utf32)
-                    strPiece = "nul (u0000)  ";
-                else
-                {
-                    strUPiece = String.Format("{0:X}", (int)ch);
-
-                    // left pad with 0's (there may be a better way to do this, but 
-                    //  I don't know what it is)
-                    while(strUPiece.Length < 4)  strUPiece = "0" + strUPiece;
-
-                    strPiece = String.Format("{0:#} (u{1,4})  ", ch, strUPiece);
-                }
-                strWhole += strPiece;
-            }
-
-            this.labelUniCodes.Text = strWhole;
-        }
-
-        private void textBoxBadWord_TextChanged(object sender, EventArgs e)
-        {
-            UpdateUniCodes(this.textBoxBadWord.Text);
-        }
-
-        private void textBoxReplacement_TextChanged(object sender, EventArgs e)
-        {
-            UpdateUniCodes(this.textBoxReplacement.Text);
-        }
-
-        private void buttonDelete_Click(object sender, System.EventArgs e)
-        {
-            this.Close();
-        }
-    }
-}
diff --git a/src/SpellingFixerEC/SpellingFixerEC.cs b/src/SpellingFixerEC/SpellingFixerEC.cs
index 0b767ca5..37130052 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.cs
+++ b/src/SpellingFixerEC/SpellingFixerEC.cs
@@ -25,6 +25,7 @@ public class SpellingFixerEC
     {
         public const string cstrAttributeFontToUse = "SpellingFixer Display Font";
         public const string cstrAttributeFontSizeToUse = "SpellingFixer Display Font Size";
+        public const string cstrAttributeFontRightToLeft = "SpellingFixer Display Right to Left";
         public const string cstrAttributeWordBoundaryDelimiter = "SpellingFixer Word Boundary Delimiter";
         public const string cstrAttributeNonWordChars = "SpellingFixer punctuation and whitespace characters";
         public const string cstrDefaultPunctuationAndWhitespace = "' ' tab nl '.' ',' '!' ':' ';' '-' \"'\" '\"' '‘' '’' '“' '”' '(' ')' '[' ']' '{' '}'";
@@ -46,6 +47,8 @@ public class SpellingFixerEC
         private string m_strConverterSpec;
         private string m_strEncConverterName;
         private bool m_bLegacy;
+        private bool m_isRightToLeft;
+
         private int m_cp = 1252;
 
         // leave a default constructor which *doesn't* automatically log-in to a project for 
@@ -67,6 +70,7 @@ public void LoginProject()
                 m_bLegacy = login.IsLegacy;
                 if (m_bLegacy)
                     m_cp = login.CpToUse;
+                m_isRightToLeft = login.IsRightToLeft;
                 m_strConverterSpec = login.ConverterSpec;
                 SpellFixerEncConverterName = login.EncConverterName;
                 WordBoundaryDelimiter = login.WordBoundaryDelimiter;
@@ -85,6 +89,7 @@ public SpellingFixerEC(string strProjectName)
                 m_bLegacy = login.IsLegacy;
                 if (m_bLegacy)
                     m_cp = login.CpToUse;
+                m_isRightToLeft = login.IsRightToLeft;
                 m_strConverterSpec = login.ConverterSpec;
                 SpellFixerEncConverterName = login.EncConverterName;
                 WordBoundaryDelimiter = login.WordBoundaryDelimiter;
@@ -97,10 +102,12 @@ public SpellingFixerEC(string strProjectName)
         public SpellingFixerEC(string strProjectName, Font font, string strConverterSpec, string strEncConverterName,
             [Optional, DefaultParameterValue(SpellingFixerEC.cstrDefaultWordBoundaryDelimiter)] string strWordBoundaryDelimiter,
             [Optional, DefaultParameterValue(cstrDefaultPunctuationAndWhitespace)] string strPunctuationAndWhiteSpace,
-            [Optional, DefaultParameterValue(false)] bool bLegacy, [Optional, DefaultParameterValue(1252)] int cp)
+            [Optional, DefaultParameterValue(false)] bool bLegacy, [Optional, DefaultParameterValue(1252)] int cp,
+            [Optional, DefaultParameterValue(false)] bool bRightToLeft)
         {
             m_font = font;
             m_bLegacy = bLegacy;
+            m_isRightToLeft = bRightToLeft;
             if (m_bLegacy)
                 m_cp = cp;
             m_strConverterSpec = strConverterSpec;
@@ -167,6 +174,12 @@ private string WordBoundaryDelimiter
             set { m_strWordBoundaryDelimiter = value; }
         }
 
+        private bool IsRightToLeft
+        {
+            get { return m_isRightToLeft; }
+            set { m_isRightToLeft = value; }
+        }
+
         private string PunctuationAndWhiteSpace
         {
             get { return m_strNonWordChars; }
@@ -201,8 +214,12 @@ public void QueryForSpellingCorrectionIfTableEmpty(string strBadWord)
 
         protected void QueryAndAppend(string strBadWord)
         {
+#if !OldDialogs
+            var aQuery = new QueryFindReplaceDialog(m_font);
+#else
             QueryGoodSpelling aQuery = new QueryGoodSpelling(m_font);
-            if (aQuery.ShowDialog(strBadWord, strBadWord, strBadWord, false) == DialogResult.OK)
+#endif
+            if (aQuery.ShowDialog(strBadWord, strBadWord, strBadWord, IsRightToLeft, WordBoundaryDelimiter, false) == DialogResult.OK)
             {
                 // if it was legacy encoded, then we need to convert the data to narrow using
                 //  the code page the user specified (or we got out of the repository)
@@ -210,7 +227,7 @@ protected void QueryAndAppend(string strBadWord)
 
                 // get a stream writer for these encoding and append
                 StreamWriter sw = new StreamWriter(m_strConverterSpec, true, enc);
-                sw.WriteLine(FormatSubstitutionRule(aQuery.BadSpelling, aQuery.GoodSpelling, WordBoundaryDelimiter, strBadWord));
+                sw.WriteLine(FormatSubstitutionRule(aQuery.FindWhat, aQuery.ReplaceWith, WordBoundaryDelimiter, strBadWord));
                 sw.Flush();
                 sw.Close();
             }
@@ -365,8 +382,12 @@ public void FindReplacementRule(string strWord)
                     else if ((nFoundIndex >= 0) && (nFoundIndex < myTable.Rows.Count))
                     {
                         DataRow row = myTable.Rows[nFoundIndex];
+#if !OldDialogs
+                        var aQuery = new QueryFindReplaceDialog(m_font);
+#else
                         QueryGoodSpelling aQuery = new QueryGoodSpelling(m_font);
-                        DialogResult res = aQuery.ShowDialog((string)row[strColumnLhs], (string)row[strColumnRhs], GetComment(row), true);
+#endif
+                        DialogResult res = aQuery.ShowDialog((string)row[strColumnLhs], (string)row[strColumnRhs], GetComment(row), IsRightToLeft, WordBoundaryDelimiter, true);
                         bool bRewrite = false;
                         if (res == DialogResult.Abort)
                         {
@@ -377,14 +398,14 @@ public void FindReplacementRule(string strWord)
 
                         // if the user clicks OK and has made a change...
                         if ((res == DialogResult.OK)
-                            && (((string)row[strColumnLhs] != aQuery.BadSpelling)
-                                || ((string)row[strColumnRhs] != aQuery.GoodSpelling)
+                            && (((string)row[strColumnLhs] != aQuery.FindWhat)
+                                || ((string)row[strColumnRhs] != aQuery.ReplaceWith)
                                 )
                         )
                         {
                             // update the table and rewrite
-                            row[strColumnLhs] = aQuery.BadSpelling;
-                            row[strColumnRhs] = aQuery.GoodSpelling;
+                            row[strColumnLhs] = aQuery.FindWhat;
+                            row[strColumnRhs] = aQuery.ReplaceWith;
                             row[strColumnCmt] = strWord;
                             bRewrite = true;
                         }
@@ -421,7 +442,7 @@ public void EditSpellingFixes()
                     DialogResult res = DialogResult.Cancel;
                     try
                     {
-                        ViewBadGoodPairsDlg dlg = new ViewBadGoodPairsDlg(myTable, m_font);
+                        ViewBadGoodPairsDlg dlg = new ViewBadGoodPairsDlg(myTable, m_font, WordBoundaryDelimiter, IsRightToLeft);
                         res = dlg.ShowDialog();
                     }
 #if DEBUG
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index e86f8a1f..b9d2c336 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -101,6 +101,7 @@
     <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
+    <RegisterForComInterop>true</RegisterForComInterop>
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="CcEC">
@@ -149,9 +150,12 @@
       <DesignTime>True</DesignTime>
       <DependentUpon>Resources.resx</DependentUpon>
     </Compile>
-    <Compile Include="QueryGoodSpelling.cs">
+    <Compile Include="QueryFindReplaceDialog.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="QueryFindReplaceDialog.Designer.cs">
+      <DependentUpon>QueryFindReplaceDialog.cs</DependentUpon>
+    </Compile>
     <Compile Include="SpellingFixerEC.cs">
     </Compile>
     <Compile Include="ViewBadGoodPairsDlg.cs">
@@ -169,9 +173,8 @@
       <Generator>ResXFileCodeGenerator</Generator>
       <LastGenOutput>Resources.Designer.cs</LastGenOutput>
     </EmbeddedResource>
-    <EmbeddedResource Include="QueryGoodSpelling.resx">
-      <DependentUpon>QueryGoodSpelling.cs</DependentUpon>
-      <SubType>Designer</SubType>
+    <EmbeddedResource Include="QueryFindReplaceDialog.resx">
+      <DependentUpon>QueryFindReplaceDialog.cs</DependentUpon>
     </EmbeddedResource>
     <EmbeddedResource Include="ViewBadGoodPairsDlg.resx">
       <DependentUpon>ViewBadGoodPairsDlg.cs</DependentUpon>
diff --git a/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs b/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs
index b44de844..ef0fcc82 100644
--- a/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs
+++ b/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs
@@ -22,11 +22,16 @@ internal partial class ViewBadGoodPairsDlg : Form
 
         const int cnBadSpelling = 0;
         const int cnGoodSpelling = 1;
+        private string _wordBoundaryDelimiter;
+        private bool _isRightToLeft;
 
-        internal ViewBadGoodPairsDlg(DataTable myTable, Font font)
+        internal ViewBadGoodPairsDlg(DataTable myTable, Font font, string wordBoundaryDelimiter, bool isRightToLeft)
         {
             InitializeComponent();
 
+            _wordBoundaryDelimiter = wordBoundaryDelimiter;
+            _isRightToLeft = isRightToLeft;
+
             // for this ctor, the columns from the datatable
             this.dataGridView.Columns.Clear();
             
@@ -413,8 +418,13 @@ protected void ProcessEditRow(DataGridViewRow theRow)
             string strBadValue = (string)theBadCell.Value;
             string strGoodValue = (string)theGoodCell.Value;
 
+#if !OldDialogs
+            var aQuery = new QueryFindReplaceDialog(dataGridView.RowsDefaultCellStyle.Font);
+#else
             QueryGoodSpelling aQuery = new QueryGoodSpelling(dataGridView.RowsDefaultCellStyle.Font);
-            DialogResult res = aQuery.ShowDialog(strBadValue, strGoodValue, strBadValue, (strBadValue != null));
+#endif
+            DialogResult res = aQuery.ShowDialog(strBadValue, strGoodValue, strBadValue,
+                                        _isRightToLeft, _wordBoundaryDelimiter, (strBadValue != null));
             if (res == DialogResult.Abort)
             {
                 // this means delete
@@ -439,10 +449,10 @@ protected void ProcessEditRow(DataGridViewRow theRow)
                 //    o both columns were non-null and now the 'bad' value (only) is changed
                 //      ->  change the bad value in the row
                 //      ->  change the bad value in the bad2good list
-                if (String.IsNullOrEmpty(aQuery.BadSpelling) || String.IsNullOrEmpty(aQuery.GoodSpelling))
+                if (String.IsNullOrEmpty(aQuery.FindWhat) || String.IsNullOrEmpty(aQuery.ReplaceWith))
                 {
                     // if either of them are null...
-                    throw new ApplicationException("The 'Bad' and 'Good' forms are not allowed to be nothing!");
+                    throw new ApplicationException("The 'Find What' and 'Replace With' values are not allowed to be nothing!");
                 }
 #if !TurnOffSF30
                 /* I don't recall what I was thinking about this one. Sometimes having the good and bad spelling
@@ -460,8 +470,8 @@ protected void ProcessEditRow(DataGridViewRow theRow)
 #endif
                 {
                     // Legacy SpellFixer
-                    theBadCell.Value = aQuery.BadSpelling;
-                    theGoodCell.Value = aQuery.GoodSpelling;
+                    theBadCell.Value = aQuery.FindWhat;
+                    theGoodCell.Value = aQuery.ReplaceWith;
                 }
 #if !TurnOffSF30
                 else if (String.IsNullOrEmpty(strBadValue) && m_mapBad2Good.ContainsKey(aQuery.BadSpelling))

From 3b816da6d3b82fdcdd535a2e55556cdca0e69b0e Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 19 Feb 2023 18:20:23 -0600
Subject: [PATCH 02/71] when querying for the current target text, we can have
 a failure if the user entered a range of verses by using the up/down control
 at the top of Ptx window (bkz it thinks the verse is just the one specified
 by the up/down control, whereas the collection of USFMTokens is based on the
 range... so triangulate to find the range from just the single verse if
 that's what we have

---
 .../BackTranslationHelperForm.cs              | 28 ++++++++++++++++---
 1 file changed, 24 insertions(+), 4 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 61811f0f..bcf6a324 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -49,16 +49,19 @@ public partial class BackTranslationHelperForm : Form, IBackTranslationHelperDat
         private IVerseRef _verseReferenceLast;
 
         /// <summary>
-        /// this contains the tokens from the source project, but just the verse(s) that we're processing (e.g. v1 or could be v2-5)
+        /// this contains the tokens from the source project, but just the verse(s) that we're processing (e.g. v1 
+        /// or could be v2-5)
         /// Key is the [BookNum]_[ChapterNum]_[VerseNum] (e.g. ACT_001_001)
         /// </summary>
         private Dictionary<string, List<IUSFMToken>> UsfmTokensSource { get; set; } = new Dictionary<string, List<IUSFMToken>>();
 
         /// <summary>
-        /// this contains the tokens from the target project, for all the verses in the current chapter (we need the whole chapter,
-        /// because we have to Put the entire chapter when we go to write it.
+        /// this contains the tokens from the target project, for all the verses in the current chapter (we need the 
+        /// whole chapter,because we have to Put the entire chapter when we go to write it.
         /// Key is the [BookNum]_[ChapterNum] (e.g. 44_001)
-        /// Key2 (of the SortedDictionary) is [BookNum]_[ChapterNum]_[VerseNum] (e.g. ACT_001_001)
+        /// Key2 (of the SortedDictionary) is [BookNum]_[ChapterNum]_[VerseNum] (e.g. ACT_001_001
+        /// Note: beware that this could be out of date if the user edits the verse (or another) in Ptx after 
+        /// we pulled these values. Cause it to requery if we lose focus.
         /// </summary>
         private Dictionary<string, SortedDictionary<string, List<IUSFMToken>>> UsfmTokensTarget { get; set; } = new Dictionary<string, SortedDictionary<string, List<IUSFMToken>>>();
 
@@ -232,6 +235,7 @@ private string CurrentTargetData
                     // if this fails to return something, it means we can't edit it
                     MessageBox.Show($"You don't have edit privilege on this chapter: {_verseReference}");
                 }
+
                 var bookChapterKey = GetBookChapterKey(_verseReference);
                 if (!UsfmTokensTarget.TryGetValue(bookChapterKey, out SortedDictionary<string, List<IUSFMToken>> vrefTokens))
                 {
@@ -243,6 +247,13 @@ private string CurrentTargetData
                 }
 
                 var bookChapterVerseKey = GetBookChapterVerseKey(_verseReference);
+
+                // issue: if Ptx is in "I'm just a single verse" mode (e.g. clicking up/down in the combo box at the top)
+                //  then this will show a single verse even if the text is a multi-verse situation
+                //  (e.g. 42_001_006, while the key in vrefTokens might be: 42_001_006-007). So figure out
+                //  which one it *should* be so we can find a hit in vrefTokens
+                bookChapterVerseKey = TriangulateBookChapterVerseKey(bookChapterVerseKey, vrefTokens);
+
                 if (!vrefTokens.ContainsKey(bookChapterVerseKey))
                     return null;
 
@@ -256,6 +267,15 @@ private string CurrentTargetData
             }
         }
 
+        private static string TriangulateBookChapterVerseKey(string bookChapterVerseKey, SortedDictionary<string, List<IUSFMToken>> vrefTokens)
+        {
+            if (vrefTokens.ContainsKey(bookChapterVerseKey))
+                return bookChapterVerseKey;
+
+            var vrefTokenKey = vrefTokens.FirstOrDefault(t => t.Value.Any(v => v.VerseRef.AllVerses.Any(sv => GetBookChapterVerseKey(sv) == bookChapterVerseKey))).Key;
+            return vrefTokenKey;
+        }
+
         private static string GetBookChapterKey(IVerseRef verseReference)
         {
             // get the key, which for the target data is the entire chapter (we have to Put as a whole chapter)

From 37fa61e396d2c3331fc397ed6f422b44df28e2c3 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 19 Feb 2023 18:21:18 -0600
Subject: [PATCH 03/71] fix several bugs related to the dialog thrashing if the
 user clicks off the dialog and changes things in Ptx, or overwriting data
 unintentionally

---
 .../BackTranslationHelperForm.Designer.cs     |  4 +-
 .../BackTranslationHelperForm.cs              | 48 +++++++++++++++++--
 .../BackTranslationHelperForm.resx            | 16 -------
 ...ParatextPluginBackTranslationHelper.csproj |  4 +-
 .../TranslationHelperForm.Designer.cs         |  1 -
 .../TranslationHelperForm.cs                  |  2 +-
 6 files changed, 50 insertions(+), 25 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
index eb7a83e0..85b5b4f1 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
@@ -29,7 +29,6 @@ protected override void Dispose(bool disposing)
         /// </summary>
         private void InitializeComponent()
         {
-            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(BackTranslationHelperForm));
             this.backTranslationHelperCtrl = new BackTranslationHelper.BackTranslationHelperCtrl();
             this.SuspendLayout();
             // 
@@ -41,7 +40,6 @@ private void InitializeComponent()
             this.backTranslationHelperCtrl.AutoSize = false;
             this.backTranslationHelperCtrl.Location = new System.Drawing.Point(0, 0);
             this.backTranslationHelperCtrl.Name = "backTranslationHelperCtrl";
-            this.backTranslationHelperCtrl.NewTargetTexts = ((System.Collections.Generic.List<BackTranslationHelper.TargetPossible>)(resources.GetObject("backTranslationHelperCtrl.NewTargetTexts")));
             this.backTranslationHelperCtrl.Size = new System.Drawing.Size(790, 449);
             this.backTranslationHelperCtrl.TabIndex = 1;
             // 
@@ -53,6 +51,8 @@ private void InitializeComponent()
             this.Controls.Add(this.backTranslationHelperCtrl);
             this.Name = "BackTranslationHelperForm";
             this.Text = "Back Translating from {0} - {1} in verse: {2}";
+            this.Activated += new System.EventHandler(this.BackTranslationHelperForm_Activated);
+            this.Deactivate += new System.EventHandler(this.BackTranslationHelperForm_Deactivate);
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.BackTranslationHelperForm_FormClosing);
             this.ResumeLayout(false);
             this.PerformLayout();
diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index bcf6a324..2382e9b6 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -1,6 +1,8 @@
 // Uncomment this define to enable code that helps in test creation for a new scenario
 //  See UnitTest_PtxBackTrHelper::It_Can_Determine_Correct_Update_To_Target_Project in the TestBwdc project for details
+#if DEBUG
 #define SerializeToCreateTestFiles
+#endif
 
 using BackTranslationHelper;
 using Paratext.PluginInterfaces;
@@ -29,6 +31,7 @@ public partial class BackTranslationHelperForm : Form, IBackTranslationHelperDat
         private BackTranslationHelperModel _model;
         private IWriteLock _writeLock = null;
         private readonly Action<IVerseRef> _setSyncReferenceGroup;
+        private bool _isNotInFocus;
 
         /// <summary>
         /// the current verse we're processing. (this generally is the 1st of a range if it is a combined verse).
@@ -119,7 +122,15 @@ private void ScriptureDataChangedHandlerTarget(IProject sender, int bookNum, int
 
         private void Host_VerseRefChanged(IPluginHost sender, IVerseRef newReference, SyncReferenceGroup group)
         {
-            // since this will initialize the _verseReference, which is intended to be the first of a series of verses...
+            // since this will initialize the _verseReference, which is intended to be the first
+            //  of a series of verses...
+            // UPDATE: but not if the Form isn't in focus (so we don't thrash around converting stuff while
+            //  the user may be editing stuff in Ptx)
+            if (_isNotInFocus && backTranslationHelperCtrl.IsModified)
+            {
+                return;
+            }
+
             var newRef = (newReference.RepresentsMultipleVerses) ? newReference.AllVerses.First() : newReference;
             GetNewReference(newRef);
         }
@@ -186,11 +197,12 @@ BackTranslationHelperModel IBackTranslationHelperDataSource.Model
         {
             get
             {
+                var currentTargetData = CurrentTargetData;
                 var model = new BackTranslationHelperModel
                 {
                     SourceData = CurrentSourceData ?? "<source data empty>",
-                    TargetData = CurrentTargetData,
-                    TargetDataPreExisting = CurrentTargetData,
+                    TargetData = currentTargetData,
+                    TargetDataPreExisting = currentTargetData,
                     TargetsPossible = new List<TargetPossible>()
                 };
                 return model;
@@ -672,5 +684,35 @@ private void Unlock()
                 temp.Dispose();
             }
         }
+
+        private void BackTranslationHelperForm_Deactivate(object sender, EventArgs e)
+        {
+            // if we lose focus, it's possible that the user switched to Ptx to make some edits,
+            //  so purge the source and target tokens which would force us to requery them
+            _isNotInFocus = true;
+
+            System.Diagnostics.Debug.WriteLine($"BackTranslationHelperForm_Deactivate: _isNotInFocus = '{_isNotInFocus}'");
+
+            /*
+             * New plan: don't move from the current verse if it's modified. but this is now handled in GetNewReference
+            var keyBookChapterVerse = GetBookChapterVerseKey(_verseReference);
+            if (UsfmTokensSource.ContainsKey(keyBookChapterVerse))
+            {
+                UsfmTokensSource.Remove(keyBookChapterVerse);
+            }
+
+            var bookChapterKey = GetBookChapterKey(_verseReference);
+            if (UsfmTokensTarget.ContainsKey(bookChapterKey))
+            {
+                UsfmTokensTarget.Remove(bookChapterKey);
+            }
+            */
+        }
+
+        private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
+        {
+            _isNotInFocus = false;
+            System.Diagnostics.Debug.WriteLine($"BackTranslationHelperForm_Activated: _isNotInFocus = '{_isNotInFocus}'");
+        }
     }
 }
diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.resx b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.resx
index de129925..1af7de15 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.resx
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.resx
@@ -117,20 +117,4 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <data name="backTranslationHelperCtrl.NewTargetTexts" mimetype="application/x-microsoft.net.object.binary.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAKcBQmFja1RyYW5zbGF0aW9uSGVscGVyLCBWZXJzaW9uPTEuMC4w
-        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49ZjE0NDdiYWUxZTYzZjQ4NV1dLCBtc2Nv
-        cmxpYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1
-        YzU2MTkzNGUwODkMAwAAAFhCYWNrVHJhbnNsYXRpb25IZWxwZXIsIFZlcnNpb249MS4wLjAuMCwgQ3Vs
-        dHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1mMTQ0N2JhZTFlNjNmNDg1BQEAAABHU3lzdGVtLkNv
-        bGxlY3Rpb25zLkdlbmVyaWMuTGlzdGAxW1tCYWNrVHJhbnNsYXRpb25IZWxwZXIuVGFyZ2V0UG9zc2li
-        bGUDAAAABl9pdGVtcwVfc2l6ZQhfdmVyc2lvbgQAACZCYWNrVHJhbnNsYXRpb25IZWxwZXIuVGFyZ2V0
-        UG9zc2libGVbXQMAAAAICAIAAAAJBAAAAAEAAAABAAAABwQAAAAAAQAAAAQAAAAEJEJhY2tUcmFuc2xh
-        dGlvbkhlbHBlci5UYXJnZXRQb3NzaWJsZQMAAAAJBQAAAA0DBQUAAAAkQmFja1RyYW5zbGF0aW9uSGVs
-        cGVyLlRhcmdldFBvc3NpYmxlAwAAAB48UG9zc2libGVJbmRleD5rX19CYWNraW5nRmllbGQfPFRyYW5z
-        bGF0b3JOYW1lPmtfX0JhY2tpbmdGaWVsZBs8VGFyZ2V0RGF0YT5rX19CYWNraW5nRmllbGQAAQEIAwAA
-        AAAAAAAKBgYAAAAACw==
-</value>
-  </data>
 </root>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index 4892310d..c27ce9a2 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -176,6 +176,7 @@
   <ItemGroup>
     <EmbeddedResource Include="BackTranslationHelperForm.resx">
       <DependentUpon>BackTranslationHelperForm.cs</DependentUpon>
+      <SubType>Designer</SubType>
     </EmbeddedResource>
     <EmbeddedResource Include="ProjectListForm.resx">
       <DependentUpon>ProjectListForm.cs</DependentUpon>
@@ -212,8 +213,7 @@ IF NOT EXIST "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(ProjectName).ptx
 del "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(ProjectName).ptxplg"
 :nodelete
 
-@echo Copying files to '%25ParatextInstallDir%25\plugins\$(ProjectName)
-' folder
+@echo Copying files to '%25ParatextInstallDir%25\plugins\$(ProjectName)' folder
 xcopy "$(TargetDir)" "%25ParatextInstallDir%25\plugins\$(ProjectName)" /y /i
 
 ren "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(TargetFileName)" "$(ProjectName).ptxplg"
diff --git a/src/SILConvertersOffice/TranslationHelperForm.Designer.cs b/src/SILConvertersOffice/TranslationHelperForm.Designer.cs
index 7081e6cb..92e1f6eb 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.Designer.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.Designer.cs
@@ -43,7 +43,6 @@ private void InitializeComponent()
             this.backTranslationHelperCtrl.Dock = System.Windows.Forms.DockStyle.Fill;
             this.backTranslationHelperCtrl.Location = new System.Drawing.Point(0, 0);
             this.backTranslationHelperCtrl.Name = "backTranslationHelperCtrl";
-            this.backTranslationHelperCtrl.NewTargetTexts = ((System.Collections.Generic.List<BackTranslationHelper.TargetPossible>)(resources.GetObject("backTranslationHelperCtrl.NewTargetTexts")));
             this.backTranslationHelperCtrl.Size = new System.Drawing.Size(790, 449);
             this.backTranslationHelperCtrl.TabIndex = 0;
             // 
diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index 7fe9c4b9..dc12467a 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -28,7 +28,7 @@ string IBaseConverterForm.ForwardString
             get
             {
                 // TODO: fix this
-                return backTranslationHelperCtrl.NewTargetTexts.FirstOrDefault()?.TargetData;
+                return backTranslationHelperCtrl.GetNewTargetTexts().FirstOrDefault()?.TargetData;
             }
 
             set

From ca82199caa2d9cd75a88e5933f55c0345a7e07b0 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 19 Feb 2023 20:33:57 -0600
Subject: [PATCH 04/71] added a button to be able to 'pin' the form as topmost
 (so it'll still show above Ptx if selected)

---
 .../BackTranslationHelperForm.Designer.cs     |  20 ++++++++++++++++
 .../BackTranslationHelperForm.cs              |  21 ++++++++++++++---
 ...ParatextPluginBackTranslationHelper.csproj |   3 +++
 .../Properties/Resources.Designer.cs          |  22 +++++++++++++++++-
 .../Properties/Resources.resx                 |   8 ++++++-
 .../Properties/Settings.Designer.cs           |  14 ++++++++++-
 .../Properties/Settings.settings              |   3 +++
 .../{Image1.bmp => SplashScreenImage.bmp}     | Bin
 .../Resources/pindown.bmp                     | Bin 0 -> 3382 bytes
 .../Resources/pinup.bmp                       | Bin 0 -> 3382 bytes
 .../app.config                                |   3 +++
 11 files changed, 88 insertions(+), 6 deletions(-)
 rename src/ParatextPluginBackTranslationHelper/Resources/{Image1.bmp => SplashScreenImage.bmp} (100%)
 create mode 100644 src/ParatextPluginBackTranslationHelper/Resources/pindown.bmp
 create mode 100644 src/ParatextPluginBackTranslationHelper/Resources/pinup.bmp

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
index 85b5b4f1..0ab0c76b 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
@@ -30,6 +30,7 @@ protected override void Dispose(bool disposing)
         private void InitializeComponent()
         {
             this.backTranslationHelperCtrl = new BackTranslationHelper.BackTranslationHelperCtrl();
+            this.buttonPinToTop = new System.Windows.Forms.Button();
             this.SuspendLayout();
             // 
             // backTranslationHelperCtrl
@@ -37,17 +38,35 @@ private void InitializeComponent()
             this.backTranslationHelperCtrl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
+            // if you edit the form (e.g. to add a control), then the designer auto coding will change this "AutoSize = false"
+            //  to (possibly true) and add an 'AutoSizeMode = GrowAndShrink'... but this will cause the embedded control to
+            //  stop showing properly. It *must* be AutoSize = false. (keep this comment here too, so the next person sees it too)
+            // (I'm not sure if it's specifically necessary, but you might need to restore the PerformLayout at the bottom,
+            //  which the editing of the form will remove too)
             this.backTranslationHelperCtrl.AutoSize = false;
             this.backTranslationHelperCtrl.Location = new System.Drawing.Point(0, 0);
             this.backTranslationHelperCtrl.Name = "backTranslationHelperCtrl";
             this.backTranslationHelperCtrl.Size = new System.Drawing.Size(790, 449);
             this.backTranslationHelperCtrl.TabIndex = 1;
             // 
+            // buttonPinToTop
+            // 
+            this.buttonPinToTop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.buttonPinToTop.Image = global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pinup;
+            this.buttonPinToTop.Location = new System.Drawing.Point(768, 0);
+            this.buttonPinToTop.Name = "buttonPinToTop";
+            this.buttonPinToTop.Size = new System.Drawing.Size(32, 32);
+            this.buttonPinToTop.TabIndex = 2;
+            this.buttonPinToTop.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText;
+            this.buttonPinToTop.UseVisualStyleBackColor = true;
+            this.buttonPinToTop.Click += new System.EventHandler(this.ButtonPinToTop_Click);
+            // 
             // BackTranslationHelperForm
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.ClientSize = new System.Drawing.Size(800, 450);
+            this.Controls.Add(this.buttonPinToTop);
             this.Controls.Add(this.backTranslationHelperCtrl);
             this.Name = "BackTranslationHelperForm";
             this.Text = "Back Translating from {0} - {1} in verse: {2}";
@@ -61,5 +80,6 @@ private void InitializeComponent()
         #endregion
 
         private BackTranslationHelper.BackTranslationHelperCtrl backTranslationHelperCtrl;
+        private System.Windows.Forms.Button buttonPinToTop;
     }
 }
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 2382e9b6..f7e2182d 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -649,9 +649,13 @@ private void RequeryWarning(IVerseRef verseReference)
         protected override void OnShown(EventArgs e)
         {
             base.OnShown(e);
-            // On Windows XP, TXL comes up underneath Paratext. See if this fixes it:
-            TopMost = true;
-            TopMost = false;
+
+            if (Properties.Settings.Default.PinnedToTop)
+            {
+                buttonPinToTop.Image = global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pindown;
+                this.TopMost = true;
+            }
+
             GetNewReference(_verseReference);
         }
 
@@ -714,5 +718,16 @@ private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
             _isNotInFocus = false;
             System.Diagnostics.Debug.WriteLine($"BackTranslationHelperForm_Activated: _isNotInFocus = '{_isNotInFocus}'");
         }
+
+        private void ButtonPinToTop_Click(object sender, EventArgs e)
+        {
+            var newCheckState = !Properties.Settings.Default.PinnedToTop;
+            Properties.Settings.Default.PinnedToTop = newCheckState;
+            Properties.Settings.Default.Save();
+            this.TopMost = newCheckState;
+            buttonPinToTop.Image = (newCheckState)
+                                    ? global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pindown
+                                    : global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pinup;
+        }
     }
 }
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index c27ce9a2..01a8395b 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -184,6 +184,7 @@
     <EmbeddedResource Include="Properties\Resources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
       <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+      <SubType>Designer</SubType>
     </EmbeddedResource>
     <EmbeddedResource Include="SplashScreenForm.resx">
       <DependentUpon>SplashScreenForm.cs</DependentUpon>
@@ -202,6 +203,8 @@
     <Content Include="$(EcDistFilesPath)\redist\EC\Plugins\Translators 4.0.0.0 Plugin Details.xml">
       <Link>EcPlugins\Translators 4.0.0.0 Plugin Details.xml</Link>
     </Content>
+    <None Include="Resources\pindown13.bmp" />
+    <None Include="Resources\pindown1.bmp" />
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <PropertyGroup>
diff --git a/src/ParatextPluginBackTranslationHelper/Properties/Resources.Designer.cs b/src/ParatextPluginBackTranslationHelper/Properties/Resources.Designer.cs
index d56c8880..f0f46f97 100644
--- a/src/ParatextPluginBackTranslationHelper/Properties/Resources.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/Properties/Resources.Designer.cs
@@ -19,7 +19,7 @@ namespace SIL.ParatextBackTranslationHelperPlugin.Properties {
     // class via a tool like ResGen or Visual Studio.
     // To add or remove a member, edit your .ResX file then rerun ResGen
     // with the /str option, or rebuild your VS project.
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
     internal class Resources {
@@ -60,6 +60,26 @@ internal Resources() {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap pindown {
+            get {
+                object obj = ResourceManager.GetObject("pindown", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.
+        /// </summary>
+        internal static System.Drawing.Bitmap pinup {
+            get {
+                object obj = ResourceManager.GetObject("pinup", resourceCulture);
+                return ((System.Drawing.Bitmap)(obj));
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized resource of type System.Drawing.Bitmap.
         /// </summary>
diff --git a/src/ParatextPluginBackTranslationHelper/Properties/Resources.resx b/src/ParatextPluginBackTranslationHelper/Properties/Resources.resx
index 18f5ace9..a5b18b56 100644
--- a/src/ParatextPluginBackTranslationHelper/Properties/Resources.resx
+++ b/src/ParatextPluginBackTranslationHelper/Properties/Resources.resx
@@ -118,7 +118,13 @@
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="pindown" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\pindown.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
+  <data name="pinup" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\pinup.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+  </data>
   <data name="SplashScreenImage" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\Image1.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+    <value>..\Resources\SplashScreenImage.bmp;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
 </root>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs b/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs
index b16208eb..71bc027c 100644
--- a/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs
@@ -12,7 +12,7 @@ namespace SIL.ParatextBackTranslationHelperPlugin.Properties {
     
     
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.4.0.0")]
     internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
         
         private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -58,5 +58,17 @@ public static Settings Default {
                 this["WindowSize"] = value;
             }
         }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("False")]
+        public bool PinnedToTop {
+            get {
+                return ((bool)(this["PinnedToTop"]));
+            }
+            set {
+                this["PinnedToTop"] = value;
+            }
+        }
     }
 }
diff --git a/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings b/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings
index 6abdd3d2..adc4809f 100644
--- a/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings
+++ b/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings
@@ -11,5 +11,8 @@
     <Setting Name="WindowSize" Type="System.Drawing.Size" Scope="User">
       <Value Profile="(Default)">800, 450</Value>
     </Setting>
+    <Setting Name="PinnedToTop" Type="System.Boolean" Scope="User">
+      <Value Profile="(Default)">False</Value>
+    </Setting>
   </Settings>
 </SettingsFile>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/Resources/Image1.bmp b/src/ParatextPluginBackTranslationHelper/Resources/SplashScreenImage.bmp
similarity index 100%
rename from src/ParatextPluginBackTranslationHelper/Resources/Image1.bmp
rename to src/ParatextPluginBackTranslationHelper/Resources/SplashScreenImage.bmp
diff --git a/src/ParatextPluginBackTranslationHelper/Resources/pindown.bmp b/src/ParatextPluginBackTranslationHelper/Resources/pindown.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..3b250237786a3f9453faf6758a91b1b4dcddb50f
GIT binary patch
literal 3382
zcmeIxF^&^K5QX7FLK-{a3>9($;u1Loq)zH6bqtURO4?b8VD}Cca0tRqk+4LvBm~93
z<5|gg5oDX-wmx^4x~IGK#(w?g)kc=~>bb~EM!I??>jd@Z7f14p;+{y0L`%>|bWjI%
zP*+ud_;k}>zJ6;_gM+o2D2x^pC=8B3qA*%qpfETBiNaXVReFOjcaTW>!e~i>!r%xb
z3Ztb23WFn%D2$dNP#7G6L}9dvKw)qM5{1#G0)@d5NEAk!2^0oLAW;}?E>IX8fka`n
zg+O6&1QLbOmI8&r5l9q9TL}~fM<7ucZ9||iI0A{nSl_qO8~ph0CFu*JLj?+hBakSJ
z4ihL0jzFR?I$WSII0A{nSbk>_N^fuk5{1!`0)@d5NEAj#2^0oLAW;|{L!dA?0*S)t
z5`O2RFgOB<!st?g!r%xb3Zu&e3WFn%D2y%_C=8B3qA<EbpfETBiNfegfx_SjBnpH7
zs6b(G1hT*X?0)}NmOMqeW%)FNrMMs9soS)f{(9sz|DW^Q>DX@ex9jNln6~rPeBbuF
z{nCFt%W2wQug@L3`Rex^r`yeslO2DY=e#`}?oKv1JbFz$G4DPe&)!{K-)&EJTZSyy
z&&w7wcR8QEuOH5w=DR;lpUnU9@qf<Wt(iQWb9Tsfvu3;59Zs`YmvR3!+x>2y9xs^4
r<e_a2k8Vgj53|#>p*TN%ez%0Te!bhA&0oq(0+$3X30x9*;skyH&R?3F

literal 0
HcmV?d00001

diff --git a/src/ParatextPluginBackTranslationHelper/Resources/pinup.bmp b/src/ParatextPluginBackTranslationHelper/Resources/pinup.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..d2c4db2f976b709b3444b4a71cebc6a7ff04771b
GIT binary patch
literal 3382
zcmeIxJB}1V41i&;gfv8)!67Hu*dm8uPT-^X7?3&WfPh0d;1GmPkqF2MynpxfYDe0~
z2t<OI8hxrNxoWEI>VEhB_O)#7_Laz6M!LI^J;40yn-jTVvJx4Q7zz4_3Fg5(m{-+&
z`ut_Seg83{1_x_3QRop9C=8B3qR=BQP#7G6M4|U{mEPdnGe{(Tp+{1nFgOB<LXVU{
zVQ>Tzg&t{v!r%xb3OyzQg~1U>6nabr3WFn%DD;>K6b45iQRp!jC=8B3qR?X@P#7G6
zM4`u0pfETBi9(N+Kw)qM5``XXfx_SjBnrLXx6&K@boY|<g`QA>!r%xb3O!*0g~1U>
z6ner13WFn%DD?K8MJT<&5l9qzA_WSABakTcL<tlIM<7w?i54gfjzFT&Q^I>L3WFn%
zDD;#H6b45iQRpcXC=8B3qR>+=P#7G6M4_ibpfETBi9%1MKw)qM5{2d)6(|gjK+ex!
zGao<5R!@-`*?z-do2&!;XYH^ohnG@bj%N!F%cG^sGKc$rI4sAf;=`J?vF^$Jvz|da
zF7t=+(>9KIX8)r&S?`TQ@1O5%|E2gtnrm)*erNlCGyZq-f3ChS-_M2nz4U%OWO^N4
QD{!sAwF1`){Nok41H&2eM*si-

literal 0
HcmV?d00001

diff --git a/src/ParatextPluginBackTranslationHelper/app.config b/src/ParatextPluginBackTranslationHelper/app.config
index 16eaa4c6..1b50715a 100644
--- a/src/ParatextPluginBackTranslationHelper/app.config
+++ b/src/ParatextPluginBackTranslationHelper/app.config
@@ -72,6 +72,9 @@
       <setting name="WindowSize" serializeAs="String">
         <value>800, 450</value>
       </setting>
+      <setting name="PinnedToTop" serializeAs="String">
+        <value>False</value>
+      </setting>
     </SIL.ParatextBackTranslationHelperPlugin.Properties.Settings>
   </userSettings>
 </configuration>
\ No newline at end of file

From 86149ef307bb64a0be02c4b6834c48802763e4fb Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 24 Feb 2023 15:33:06 -0600
Subject: [PATCH 05/71] don't preview online translators or compound or
 primary-fallback converters (it takes too much time)

---
 src/ClipboardEC/ClipboardEncConverter.cs | 31 +++++++++++++++++++++---
 1 file changed, 27 insertions(+), 4 deletions(-)

diff --git a/src/ClipboardEC/ClipboardEncConverter.cs b/src/ClipboardEC/ClipboardEncConverter.cs
index 0c32efb7..b19c7dd9 100644
--- a/src/ClipboardEC/ClipboardEncConverter.cs
+++ b/src/ClipboardEC/ClipboardEncConverter.cs
@@ -856,11 +856,20 @@ private void CreateContextMenu()
                     try
                     {
                         IEncConverter aEC = aECs[strText];
-                        strOutput = this.ConvertData(aEC,strInput);
-                        // if( strOutput != null )
-                        //     strText += String.Format(":\t{0}", strOutput);
+
+                        // if it's a Translator type, then hold off calling to the internet for conversion
+                        //  which takes time and is possibly unnecessary), put in a dummy result to see if 
+                        //  that's really what they want
+                        if (IsOnlineTranslator(aEC))
+                        {
+                            strOutput = $"Click to convert w/ {aEC.Name}";
+                        }
+                        else
+                        {
+                            strOutput = this.ConvertData(aEC, strInput);
+                        }
                     }
-                    catch(Exception e)
+                    catch (Exception e)
                     {
                         // since this is just a 'preview' (and exceptions can be expected), don't
                         //  allow them to be throw up.
@@ -878,6 +887,20 @@ private void CreateContextMenu()
             }
         }
 
+        private static bool IsOnlineTranslator(IEncConverter aEC)
+        {
+            var isOnlineTranslator = (aEC.ProcessType & (int)ProcessTypeFlags.Translation) == (int)ProcessTypeFlags.Translation;
+
+            // it could still be if it's a primary-fallback or daisy-chain converter that has one (but there's no interface way
+            //  to get at the individual converters... :-( (and changing the interface would just break existing clients)
+            if ((aEC.ImplementType == EncConverters.strTypeSILcomp) || (aEC.ImplementType == EncConverters.strTypeSILfallback))
+            {
+                isOnlineTranslator = true;  // for now...
+            }
+
+            return isOnlineTranslator;
+        }
+
         private void NormalizeClick(Object sender, EventArgs e)
         {
             // Determine if clicked menu item is the Blue menu item.

From 05cf027bed067b2f129c3077679ea25a7402f9a0 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 24 Feb 2023 15:37:01 -0600
Subject: [PATCH 06/71] moved the 'stay on top' pin to the underlying control

---
 .../BackTranslationHelperForm.cs               | 18 +-----------------
 .../Properties/Settings.Designer.cs            | 12 ------------
 .../Properties/Settings.settings               |  3 ---
 .../app.config                                 |  3 ---
 4 files changed, 1 insertion(+), 35 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index f7e2182d..aa299413 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -649,13 +649,6 @@ private void RequeryWarning(IVerseRef verseReference)
         protected override void OnShown(EventArgs e)
         {
             base.OnShown(e);
-
-            if (Properties.Settings.Default.PinnedToTop)
-            {
-                buttonPinToTop.Image = global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pindown;
-                this.TopMost = true;
-            }
-
             GetNewReference(_verseReference);
         }
 
@@ -717,17 +710,8 @@ private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
         {
             _isNotInFocus = false;
             System.Diagnostics.Debug.WriteLine($"BackTranslationHelperForm_Activated: _isNotInFocus = '{_isNotInFocus}'");
-        }
 
-        private void ButtonPinToTop_Click(object sender, EventArgs e)
-        {
-            var newCheckState = !Properties.Settings.Default.PinnedToTop;
-            Properties.Settings.Default.PinnedToTop = newCheckState;
-            Properties.Settings.Default.Save();
-            this.TopMost = newCheckState;
-            buttonPinToTop.Image = (newCheckState)
-                                    ? global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pindown
-                                    : global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pinup;
+            GetNewReference(_verseReference);
         }
     }
 }
diff --git a/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs b/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs
index 71bc027c..e9592f50 100644
--- a/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/Properties/Settings.Designer.cs
@@ -58,17 +58,5 @@ public static Settings Default {
                 this["WindowSize"] = value;
             }
         }
-        
-        [global::System.Configuration.UserScopedSettingAttribute()]
-        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-        [global::System.Configuration.DefaultSettingValueAttribute("False")]
-        public bool PinnedToTop {
-            get {
-                return ((bool)(this["PinnedToTop"]));
-            }
-            set {
-                this["PinnedToTop"] = value;
-            }
-        }
     }
 }
diff --git a/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings b/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings
index adc4809f..6abdd3d2 100644
--- a/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings
+++ b/src/ParatextPluginBackTranslationHelper/Properties/Settings.settings
@@ -11,8 +11,5 @@
     <Setting Name="WindowSize" Type="System.Drawing.Size" Scope="User">
       <Value Profile="(Default)">800, 450</Value>
     </Setting>
-    <Setting Name="PinnedToTop" Type="System.Boolean" Scope="User">
-      <Value Profile="(Default)">False</Value>
-    </Setting>
   </Settings>
 </SettingsFile>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/app.config b/src/ParatextPluginBackTranslationHelper/app.config
index 1b50715a..16eaa4c6 100644
--- a/src/ParatextPluginBackTranslationHelper/app.config
+++ b/src/ParatextPluginBackTranslationHelper/app.config
@@ -72,9 +72,6 @@
       <setting name="WindowSize" serializeAs="String">
         <value>800, 450</value>
       </setting>
-      <setting name="PinnedToTop" serializeAs="String">
-        <value>False</value>
-      </setting>
     </SIL.ParatextBackTranslationHelperPlugin.Properties.Settings>
   </userSettings>
 </configuration>
\ No newline at end of file

From 83eb0308bf5f64b82315af75c3401d041a66eef0 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 24 Feb 2023 15:39:01 -0600
Subject: [PATCH 07/71] change WriteToTarget so that it returns a bool so the
 ctrl can stop moving forward if it returns false.

---
 .../BackTranslationHelperForm.cs               | 18 +++++++++++++-----
 .../TranslationHelperForm.cs                   |  3 ++-
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index aa299413..6577e0f3 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -370,7 +370,7 @@ void IBackTranslationHelperDataSource.MoveToNext()
             _setSyncReferenceGroup(_verseReference);
         }
 
-        void IBackTranslationHelperDataSource.WriteToTarget(string text)
+        bool IBackTranslationHelperDataSource.WriteToTarget(string text)
         {
             try
             {
@@ -379,8 +379,9 @@ void IBackTranslationHelperDataSource.WriteToTarget(string text)
                 var vrefTokensTarget = CalculateTargetTokens(_verseReference, _versesReference, text, UsfmTokensSource, UsfmTokensTarget);
                 if (vrefTokensTarget == null)
                 {
-                    RequeryWarning(_verseReference);
-                    return; // nothing to do
+                    var result = RequeryWarning(_verseReference);
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: RequeryWarning returned {result}");
+                    return result;
                 }
 
                 if (_writeLock == null) // it shouldn't be, but if it is, this should warn the user that it isn't going to work
@@ -389,11 +390,13 @@ void IBackTranslationHelperDataSource.WriteToTarget(string text)
                 var tokens = vrefTokensTarget.SelectMany(d => d.Value).ToList();
                 _projectTarget.PutUSFMTokens(_writeLock, tokens, _verseReference.BookNum);
                 Unlock();
+                return true;
             }
             catch (Exception ex)
             {
                 MessageBox.Show($"Exception caught:\n{ex.Message}");
             }
+            return false;
         }
 
         /// <summary>
@@ -635,15 +638,20 @@ private static bool IsParagraphToken(IUSFMToken token)
             return (token is IUSFMMarkerToken markerToken) && (markerToken.Type == MarkerType.Paragraph) && _paragraphMarkers.Contains(markerToken.Marker);
         }
 
-        private void RequeryWarning(IVerseRef verseReference)
+        private bool RequeryWarning(IVerseRef verseReference)
         {
             // if we don't already have it... it's probably because something was changed in the project
             // TODO: do something! (probably just need to Initialize and UpdateData, so we'll have requeried everything)
-            var res = MessageBox.Show("It seems that something might have changed in the target project, which requires us to requery. Click 'Yes' to requery and start again. Click 'No' if you want to close this box (and copy the current text if you made changes for next time).",
+            var res = MessageBox.Show("Something might have changed in the source or target projects, which requires us to requery. If you have made changes, you'll want to click 'No', so you can copy the changes to the clipboard first. Then try again, and click 'Yes' next time to requery the projects after which you can paste your changes and continue.",
                                       ParatextBackTranslationHelperPlugin.PluginName, MessageBoxButtons.YesNo);
 
             if (res == DialogResult.Yes)
+            {
                 GetNewReference(verseReference);
+                return true;
+        }
+
+            return false;
         }
 
         protected override void OnShown(EventArgs e)
diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index dc12467a..6a97b80b 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -95,10 +95,11 @@ public void Log(string message)
             // TODO: 
         }
 
-        public void WriteToTarget(string text)
+        public bool WriteToTarget(string text)
         {
             ButtonPressed = FormButtons.ReplaceEvery;
             Close();
+            return true;
         }
 
         public void SetDataUpdateProc(Action<BackTranslationHelperModel> updateDataProc)

From b7a1123502c1af85c5c34099ba0d9890f815ccf6 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 24 Feb 2023 15:40:20 -0600
Subject: [PATCH 08/71] missed a file that had changes for moving the pin to
 top to the control

---
 .../BackTranslationHelperForm.Designer.cs         | 15 ---------------
 1 file changed, 15 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
index 0ab0c76b..c72a28f8 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
@@ -30,7 +30,6 @@ protected override void Dispose(bool disposing)
         private void InitializeComponent()
         {
             this.backTranslationHelperCtrl = new BackTranslationHelper.BackTranslationHelperCtrl();
-            this.buttonPinToTop = new System.Windows.Forms.Button();
             this.SuspendLayout();
             // 
             // backTranslationHelperCtrl
@@ -49,24 +48,11 @@ private void InitializeComponent()
             this.backTranslationHelperCtrl.Size = new System.Drawing.Size(790, 449);
             this.backTranslationHelperCtrl.TabIndex = 1;
             // 
-            // buttonPinToTop
-            // 
-            this.buttonPinToTop.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
-            this.buttonPinToTop.Image = global::SIL.ParatextBackTranslationHelperPlugin.Properties.Resources.pinup;
-            this.buttonPinToTop.Location = new System.Drawing.Point(768, 0);
-            this.buttonPinToTop.Name = "buttonPinToTop";
-            this.buttonPinToTop.Size = new System.Drawing.Size(32, 32);
-            this.buttonPinToTop.TabIndex = 2;
-            this.buttonPinToTop.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText;
-            this.buttonPinToTop.UseVisualStyleBackColor = true;
-            this.buttonPinToTop.Click += new System.EventHandler(this.ButtonPinToTop_Click);
-            // 
             // BackTranslationHelperForm
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.ClientSize = new System.Drawing.Size(800, 450);
-            this.Controls.Add(this.buttonPinToTop);
             this.Controls.Add(this.backTranslationHelperCtrl);
             this.Name = "BackTranslationHelperForm";
             this.Text = "Back Translating from {0} - {1} in verse: {2}";
@@ -80,6 +66,5 @@ private void InitializeComponent()
         #endregion
 
         private BackTranslationHelper.BackTranslationHelperCtrl backTranslationHelperCtrl;
-        private System.Windows.Forms.Button buttonPinToTop;
     }
 }
\ No newline at end of file

From 579286ff0e5c0dd7f61fe2af9f4dfdfc99ad3070 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 24 Feb 2023 15:41:32 -0600
Subject: [PATCH 09/71] added some debugging statements so I can figure out why
 we're overwriting data after editing manually in Ptx.

---
 .../BackTranslationHelperForm.cs              | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 6577e0f3..583539e3 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -122,6 +122,8 @@ private void ScriptureDataChangedHandlerTarget(IProject sender, int bookNum, int
 
         private void Host_VerseRefChanged(IPluginHost sender, IVerseRef newReference, SyncReferenceGroup group)
         {
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: In Host_VerseRefChanged {newReference} & {group}, _isNotInFocus: {_isNotInFocus}, IsModified: {backTranslationHelperCtrl.IsModified}");
+
             // since this will initialize the _verseReference, which is intended to be the first
             //  of a series of verses...
             // UPDATE: but not if the Form isn't in focus (so we don't thrash around converting stuff while
@@ -216,9 +218,14 @@ private string CurrentSourceData
                 var keyBookChapterVerse = GetBookChapterVerseKey(_verseReference);
                 if (!UsfmTokensSource.TryGetValue(keyBookChapterVerse, out List<IUSFMToken> tokens))
                 {
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Loading UsfmTokensSource for {keyBookChapterVerse}");
                     tokens = _projectSource.GetUSFMTokens(_verseReference.BookNum, _verseReference.ChapterNum, _verseReference.VerseNum).ToList();
                     UsfmTokensSource.Add(keyBookChapterVerse, tokens);
                 }
+                else
+                {
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Already load UsfmTokensSource for {keyBookChapterVerse}");
+                }
 
                 var data = tokens.OfType<IUSFMTextToken>()
                                  .Where(t => t.IsPublishableVernacular && IsMatchingVerse(t.VerseRef, _verseReference))
@@ -251,12 +258,17 @@ private string CurrentTargetData
                 var bookChapterKey = GetBookChapterKey(_verseReference);
                 if (!UsfmTokensTarget.TryGetValue(bookChapterKey, out SortedDictionary<string, List<IUSFMToken>> vrefTokens))
                 {
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Loading UsfmTokensTarget for {bookChapterKey}");
                     var chapterTokens = _projectTarget.GetUSFMTokens(_verseReference.BookNum, _verseReference.ChapterNum).ToList();
                     var dict = chapterTokens.GroupBy(t => t.VerseRef, t => t, (key, g) => new { VerseRef = key, USFMTokens = g.ToList() })
                                             .ToDictionary(t => GetBookChapterVerseKey(t.VerseRef), t => t.USFMTokens);
                     vrefTokens = new SortedDictionary<string, List<IUSFMToken>>(dict);
                     UsfmTokensTarget.Add(bookChapterKey, vrefTokens);
                 }
+                else
+                {
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Already load UsfmTokensTarget for {bookChapterKey}");
+                }
 
                 var bookChapterVerseKey = GetBookChapterVerseKey(_verseReference);
 
@@ -357,7 +369,7 @@ void IBackTranslationHelperDataSource.SetDataUpdateProc(Action<BackTranslationHe
 
         void IBackTranslationHelperDataSource.Log(string message)
         {
-            _host.Log(_plugin, message);
+            _host.Log(_plugin, $"PtxBTH: {message}");
         }
 
         void IBackTranslationHelperDataSource.MoveToNext()
@@ -374,6 +386,8 @@ bool IBackTranslationHelperDataSource.WriteToTarget(string text)
         {
             try
             {
+                System.Diagnostics.Debug.WriteLine("PtxBTH: In WriteToTarget");
+
                 _buttonPressed = ButtonPressed.WriteToTarget;
 
                 var vrefTokensTarget = CalculateTargetTokens(_verseReference, _versesReference, text, UsfmTokensSource, UsfmTokensTarget);
@@ -696,7 +710,7 @@ private void BackTranslationHelperForm_Deactivate(object sender, EventArgs e)
             //  so purge the source and target tokens which would force us to requery them
             _isNotInFocus = true;
 
-            System.Diagnostics.Debug.WriteLine($"BackTranslationHelperForm_Deactivate: _isNotInFocus = '{_isNotInFocus}'");
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: BackTranslationHelperForm_Deactivate: _isNotInFocus = '{_isNotInFocus}', IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}");
 
             /*
              * New plan: don't move from the current verse if it's modified. but this is now handled in GetNewReference
@@ -706,6 +720,7 @@ private void BackTranslationHelperForm_Deactivate(object sender, EventArgs e)
                 UsfmTokensSource.Remove(keyBookChapterVerse);
             }
 
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: BackTranslationHelperForm_Activated: _isNotInFocus = '{_isNotInFocus}', IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}");
             var bookChapterKey = GetBookChapterKey(_verseReference);
             if (UsfmTokensTarget.ContainsKey(bookChapterKey))
             {

From 9360e2d880a4601d98380553cdaaf63d91d78083 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 24 Feb 2023 15:45:25 -0600
Subject: [PATCH 10/71] figured out the fix for overwriting data: don't mark
 the data dirty until the form comes back in focus. (if you do it when it
 loses focus, it may get marked clean thru the call from Ptx on change of
 verse (if the user is editing in different verses in Ptx). By waiting until
 we get back, we can guarantee it gets refreshed when the Form has focus (by
 which Ptx editing is finished)

---
 .../BackTranslationHelperForm.cs              | 33 ++++++++++++-------
 1 file changed, 21 insertions(+), 12 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 583539e3..6a66ae0f 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -129,9 +129,7 @@ private void Host_VerseRefChanged(IPluginHost sender, IVerseRef newReference, Sy
             // UPDATE: but not if the Form isn't in focus (so we don't thrash around converting stuff while
             //  the user may be editing stuff in Ptx)
             if (_isNotInFocus && backTranslationHelperCtrl.IsModified)
-            {
                 return;
-            }
 
             var newRef = (newReference.RepresentsMultipleVerses) ? newReference.AllVerses.First() : newReference;
             GetNewReference(newRef);
@@ -663,7 +661,7 @@ private bool RequeryWarning(IVerseRef verseReference)
             {
                 GetNewReference(verseReference);
                 return true;
-        }
+            }
 
             return false;
         }
@@ -712,27 +710,38 @@ private void BackTranslationHelperForm_Deactivate(object sender, EventArgs e)
 
             System.Diagnostics.Debug.WriteLine($"PtxBTH: BackTranslationHelperForm_Deactivate: _isNotInFocus = '{_isNotInFocus}', IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}");
 
-            /*
-             * New plan: don't move from the current verse if it's modified. but this is now handled in GetNewReference
-            var keyBookChapterVerse = GetBookChapterVerseKey(_verseReference);
+            // if nothing's been changed, then no need to show it as needing to be requeried
+            // WRONG: if they edit something while deactivated, we won’t query it again if we don’t clear it
+            //if (!backTranslationHelperCtrl.IsModified)
+            //    return;
+        }
+
+        private void PurgeSourceData(IVerseRef verseReference)
+        {
+            var keyBookChapterVerse = GetBookChapterVerseKey(verseReference);
             if (UsfmTokensSource.ContainsKey(keyBookChapterVerse))
             {
                 UsfmTokensSource.Remove(keyBookChapterVerse);
             }
+        }
 
+        private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
+        {
+            _isNotInFocus = false;
             System.Diagnostics.Debug.WriteLine($"PtxBTH: BackTranslationHelperForm_Activated: _isNotInFocus = '{_isNotInFocus}', IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}");
+
+            // make the source and target data stale, and trigger a requery...
+            PurgeSourceData(_verseReference);
+
             var bookChapterKey = GetBookChapterKey(_verseReference);
             if (UsfmTokensTarget.ContainsKey(bookChapterKey))
             {
                 UsfmTokensTarget.Remove(bookChapterKey);
             }
-            */
-        }
 
-        private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
-        {
-            _isNotInFocus = false;
-            System.Diagnostics.Debug.WriteLine($"BackTranslationHelperForm_Activated: _isNotInFocus = '{_isNotInFocus}'");
+            // unless we were editing it, and then force it to stay the same
+            if (backTranslationHelperCtrl.IsModified)
+                return;
 
             GetNewReference(_verseReference);
         }

From 57c160905519d164f693f2362cda729f8fd83ebb Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 24 Feb 2023 17:40:38 -0600
Subject: [PATCH 11/71] the repositioning of the form after startup (from where
 it was when we shut down last time) wasn't working. Changed it to wait for
 the Load event before setting the boundaries (rather than the ctor)

---
 .../BackTranslationHelperForm.Designer.cs     |  1 +
 .../BackTranslationHelperForm.cs              | 21 +++++++++++--------
 2 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
index c72a28f8..32eec23e 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
@@ -59,6 +59,7 @@ private void InitializeComponent()
             this.Activated += new System.EventHandler(this.BackTranslationHelperForm_Activated);
             this.Deactivate += new System.EventHandler(this.BackTranslationHelperForm_Deactivate);
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.BackTranslationHelperForm_FormClosing);
+            this.Load += new System.EventHandler(this.BackTranslationHelperForm_Load);
             this.ResumeLayout(false);
             this.PerformLayout();
         }
diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 6a66ae0f..ec3cd43b 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -89,15 +89,6 @@ public BackTranslationHelperForm(IPluginHost host, ParatextBackTranslationHelper
             _host.VerseRefChanged += Host_VerseRefChanged;
             _projectSource.ScriptureDataChanged += ScriptureDataChangedHandlerSource;
             _projectTarget.ScriptureDataChanged += ScriptureDataChangedHandlerTarget;
-
-            Text = GetFrameText(_projectSource, _projectTarget, _verseReference);
-            Location = Properties.Settings.Default.WindowLocation;
-            WindowState = Properties.Settings.Default.DefaultWindowState;
-            if (MinimumSize.Height <= Properties.Settings.Default.WindowSize.Height &&
-                MinimumSize.Width <= Properties.Settings.Default.WindowSize.Width)
-            {
-                Size = Properties.Settings.Default.WindowSize;
-            }
         }
 
         private static string GetFrameText(IProject projectSource, IProject projectTarget, IVerseRef versesReference)
@@ -672,6 +663,18 @@ protected override void OnShown(EventArgs e)
             GetNewReference(_verseReference);
         }
 
+        private void BackTranslationHelperForm_Load(object sender, EventArgs e)
+        {
+            Text = GetFrameText(_projectSource, _projectTarget, _verseReference);
+            Location = Properties.Settings.Default.WindowLocation;
+            WindowState = Properties.Settings.Default.DefaultWindowState;
+            if (MinimumSize.Height <= Properties.Settings.Default.WindowSize.Height &&
+                MinimumSize.Width <= Properties.Settings.Default.WindowSize.Width)
+            {
+                Size = Properties.Settings.Default.WindowSize;
+            }
+        }
+
         private void BackTranslationHelperForm_FormClosing(object sender, FormClosingEventArgs e)
         {
             // only allow Cancel or ReplaceEvery

From 54313106f1513a96f1bc3c3ddeb50b724043c1ea Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 25 Feb 2023 08:31:11 -0600
Subject: [PATCH 12/71] update LangVersion to 'latest' in projects that are
 behind

---
 .../ParatextPluginBackTranslationHelper.csproj            | 8 ++++----
 .../SecOffice_ManagedAggregator03.csproj                  | 4 ++--
 src/SILConvertersOffice/SILConvertersOffice.csproj        | 4 ++--
 src/SILConvertersOffice10/SILConvertersOffice10.csproj    | 4 ++--
 src/SILConvertersOffice13/SILConvertersOffice13.csproj    | 4 ++--
 src/SILConvertersWordML/TestBwdc/TestBwdc.csproj          | 4 ++--
 6 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index 01a8395b..b0c2bc89 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -39,7 +39,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <DebugType>full</DebugType>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
@@ -48,7 +48,7 @@
     <Optimize>true</Optimize>
     <DebugType>pdbonly</DebugType>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
@@ -57,7 +57,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <DebugType>full</DebugType>
     <PlatformTarget>x86</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
@@ -66,7 +66,7 @@
     <Optimize>true</Optimize>
     <DebugType>pdbonly</DebugType>
     <PlatformTarget>x86</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
   </PropertyGroup>
   <ItemGroup>
diff --git a/src/SILConvertersOffice/ManagedAggregator/SecOffice_ManagedAggregator03.csproj b/src/SILConvertersOffice/ManagedAggregator/SecOffice_ManagedAggregator03.csproj
index ad3d215f..47eacf59 100644
--- a/src/SILConvertersOffice/ManagedAggregator/SecOffice_ManagedAggregator03.csproj
+++ b/src/SILConvertersOffice/ManagedAggregator/SecOffice_ManagedAggregator03.csproj
@@ -58,7 +58,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <DebugType>full</DebugType>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
     <CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
@@ -69,7 +69,7 @@
     <Optimize>true</Optimize>
     <DebugType>pdbonly</DebugType>
     <PlatformTarget>x86</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
     <CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index 47fc0f92..6b94caf8 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -69,7 +69,7 @@
     <DefineConstants>TRACE</DefineConstants>
     <Optimize>true</Optimize>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
@@ -77,7 +77,7 @@
     <OutputPath>..\..\output\x64\Debug\</OutputPath>
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <ItemGroup>
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index 1ebaf8dc..49a653da 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -63,7 +63,7 @@
     <OutputPath>bin\x64\Debug\</OutputPath>
     <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF14</DefineConstants>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
@@ -71,7 +71,7 @@
     <DefineConstants>TRACE;BUILD_FOR_OFF14</DefineConstants>
     <Optimize>true</Optimize>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <PropertyGroup>
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index 8240e79f..85d4733f 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -63,7 +63,7 @@
     <OutputPath>..\..\output\x64\Debug\</OutputPath>
     <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF15</DefineConstants>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
@@ -72,7 +72,7 @@
     <Optimize>true</Optimize>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <PropertyGroup>
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 98effa92..1cd54d0d 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -61,7 +61,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <DebugType>full</DebugType>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
@@ -71,7 +71,7 @@
     <Optimize>true</Optimize>
     <DebugType>pdbonly</DebugType>
     <PlatformTarget>x64</PlatformTarget>
-    <LangVersion>7.3</LangVersion>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>

From dd196408955b72bdf98ee13e0ae41d577e1cd9b8 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 25 Feb 2023 08:35:50 -0600
Subject: [PATCH 13/71] don't bother asking the user if they want to requery
 the data; just do it for them (it shouldn't overwrite any edited text)

---
 .../BackTranslationHelperForm.cs              | 36 ++++++++-----------
 1 file changed, 15 insertions(+), 21 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index ec3cd43b..59213190 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -382,13 +382,23 @@ bool IBackTranslationHelperDataSource.WriteToTarget(string text)
                 var vrefTokensTarget = CalculateTargetTokens(_verseReference, _versesReference, text, UsfmTokensSource, UsfmTokensTarget);
                 if (vrefTokensTarget == null)
                 {
-                    var result = RequeryWarning(_verseReference);
-                    System.Diagnostics.Debug.WriteLine($"PtxBTH: RequeryWarning returned {result}");
-                    return result;
+                    // if we don't already have it... it's probably because something was changed in the project
+                    //  external to this form (we lose the data if we get activated).
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: RequeryWarning");
+
+                    // Note: if the Target Translation textbox has modified data, the current implementation shouldn't
+                    //  overwrite it (see UpdateData in BackTranslationHelperCtrl.cs, which shows that if it's
+                    //  modified, it will get it from the edit box instead of the model... i.e. won't change it)
+                    // So if we don't have it, just requery the data and return false (so we don't move on)
+                    GetNewReference(_verseReference);
+
+                    // by returning false, we prevent it from doing 'next' if that's the button the user clicked,
+                    //  while resetting the IsModified status, so they can click 'Next' next time and have the edited
+                    //  text written to Ptx
+                    return false;
                 }
 
-                if (_writeLock == null) // it shouldn't be, but if it is, this should warn the user that it isn't going to work
-                    _writeLock = _projectTarget.RequestWriteLock(_plugin, ReleaseRequested, _verseReference.BookNum, _verseReference.ChapterNum);
+                _writeLock ??= _projectTarget.RequestWriteLock(_plugin, ReleaseRequested, _verseReference.BookNum, _verseReference.ChapterNum);
 
                 var tokens = vrefTokensTarget.SelectMany(d => d.Value).ToList();
                 _projectTarget.PutUSFMTokens(_writeLock, tokens, _verseReference.BookNum);
@@ -641,22 +651,6 @@ private static bool IsParagraphToken(IUSFMToken token)
             return (token is IUSFMMarkerToken markerToken) && (markerToken.Type == MarkerType.Paragraph) && _paragraphMarkers.Contains(markerToken.Marker);
         }
 
-        private bool RequeryWarning(IVerseRef verseReference)
-        {
-            // if we don't already have it... it's probably because something was changed in the project
-            // TODO: do something! (probably just need to Initialize and UpdateData, so we'll have requeried everything)
-            var res = MessageBox.Show("Something might have changed in the source or target projects, which requires us to requery. If you have made changes, you'll want to click 'No', so you can copy the changes to the clipboard first. Then try again, and click 'Yes' next time to requery the projects after which you can paste your changes and continue.",
-                                      ParatextBackTranslationHelperPlugin.PluginName, MessageBoxButtons.YesNo);
-
-            if (res == DialogResult.Yes)
-            {
-                GetNewReference(verseReference);
-                return true;
-            }
-
-            return false;
-        }
-
         protected override void OnShown(EventArgs e)
         {
             base.OnShown(e);

From fc0d6f3f2a4fc372824e6cc8ee646791cb4bde46 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 25 Feb 2023 08:50:23 -0600
Subject: [PATCH 14/71] updated projects to the new EcCore nuget 0.5.5

---
 .../IndicConverters/IndicConverters.wixproj   |  4 +--
 .../IndicConverters/packages.config           |  2 +-
 .../IndicConverters64bit.wixproj              |  4 +--
 .../IndicConverters64bit/packages.config      |  2 +-
 .../SEC Setup 64bit/SEC Setup 64bit.wixproj   |  4 +--
 Installer/SEC Setup 64bit/packages.config     |  2 +-
 Installer/SEC Setup/SEC Setup.wixproj         |  4 +--
 Installer/SEC Setup/packages.config           |  2 +-
 Installer/ScHelpMM/ScHelpMM.wixproj           |  4 +--
 Installer/ScHelpMM/packages.config            |  2 +-
 .../SetupSILConverters.wixproj                |  4 +--
 Installer/SetupSILConverters/packages.config  |  2 +-
 .../TECkitPackageMM64bit.wixproj              |  4 +--
 .../TECkitPackage64bitMM/packages.config      |  2 +-
 .../TECkitPackageMM/TECkitPackageMM.wixproj   |  4 +--
 Installer/TECkitPackageMM/packages.config     |  2 +-
 src/AdaptIt2Unicode/AdaptIt2Unicode.csproj    |  4 +--
 src/AdaptIt2Unicode/packages.config           |  2 +-
 src/BulkSFMConverter/SFMConv.csproj           |  6 ++--
 src/BulkSFMConverter/packages.config          |  2 +-
 src/ClipboardEC/ClipboardEC.csproj            |  6 ++--
 src/ClipboardEC/packages.config               |  2 +-
 src/DChartHelper/DChartHelper.csproj          |  6 ++--
 src/DChartHelper/packages.config              |  2 +-
 ...ParatextPluginBackTranslationHelper.csproj | 28 +++++++++----------
 .../packages.config                           |  2 +-
 .../SILConvertersInstaller.vbproj             |  6 ++--
 src/SILConvertersInstaller/packages.config    |  2 +-
 .../SILConvertersOffice.csproj                |  6 ++--
 src/SILConvertersOffice/packages.config       |  2 +-
 .../SILConvertersOffice07.csproj              |  6 ++--
 src/SILConvertersOffice07/packages.config     |  2 +-
 .../SILConvertersOffice10.csproj              |  6 ++--
 src/SILConvertersOffice10/packages.config     |  2 +-
 .../SILConvertersOffice13.csproj              |  6 ++--
 src/SILConvertersOffice13/packages.config     |  2 +-
 .../SILConvertersWordML.csproj                |  6 ++--
 .../TestBwdc/TestBwdc.csproj                  | 22 ++++++++++-----
 .../TestBwdc/packages.config                  |  2 +-
 src/SILConvertersWordML/packages.config       |  2 +-
 src/SilConvertersXML/SilConvertersXML.csproj  |  6 ++--
 src/SilConvertersXML/packages.config          |  2 +-
 src/SpellingFixerEC/SpellingFixerEC.csproj    |  6 ++--
 src/SpellingFixerEC/packages.config           |  2 +-
 .../TECkit Mapping Editor.csproj              |  6 ++--
 src/TECkit Mapping Editor/packages.config     |  2 +-
 46 files changed, 118 insertions(+), 86 deletions(-)

diff --git a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj
index 2c520679..34089e77 100644
--- a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
+++ b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -81,8 +81,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters/packages.config b/Installer/Converter Packages/IndicConverters/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/Converter Packages/IndicConverters/packages.config	
+++ b/Installer/Converter Packages/IndicConverters/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj
index 6bb85798..93d4b5fd 100644
--- a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
+++ b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x64</Platform>
@@ -39,8 +39,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters64bit/packages.config b/Installer/Converter Packages/IndicConverters64bit/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/Converter Packages/IndicConverters64bit/packages.config	
+++ b/Installer/Converter Packages/IndicConverters64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj
index ad6cc2c4..b295d21a 100644
--- a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
+++ b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x64</Platform>
@@ -58,8 +58,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup 64bit/packages.config b/Installer/SEC Setup 64bit/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/SEC Setup 64bit/packages.config	
+++ b/Installer/SEC Setup 64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup/SEC Setup.wixproj b/Installer/SEC Setup/SEC Setup.wixproj
index 688af7a5..8c37b8f8 100644
--- a/Installer/SEC Setup/SEC Setup.wixproj	
+++ b/Installer/SEC Setup/SEC Setup.wixproj	
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -66,8 +66,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup/packages.config b/Installer/SEC Setup/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/SEC Setup/packages.config	
+++ b/Installer/SEC Setup/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/ScHelpMM/ScHelpMM.wixproj b/Installer/ScHelpMM/ScHelpMM.wixproj
index 0242582e..05c3d151 100644
--- a/Installer/ScHelpMM/ScHelpMM.wixproj
+++ b/Installer/ScHelpMM/ScHelpMM.wixproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -47,8 +47,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/ScHelpMM/packages.config b/Installer/ScHelpMM/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/ScHelpMM/packages.config
+++ b/Installer/ScHelpMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SetupSILConverters/SetupSILConverters.wixproj b/Installer/SetupSILConverters/SetupSILConverters.wixproj
index c51cea8e..fc0cf415 100644
--- a/Installer/SetupSILConverters/SetupSILConverters.wixproj
+++ b/Installer/SetupSILConverters/SetupSILConverters.wixproj
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="$([MSBuild]::GetPathOfFileAbove(directory.build.props))" Condition="Exists('$([MSBuild]::GetPathOfFileAbove(directory.build.props))')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -65,8 +65,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <Target Name="PostBuildCopy" AfterTargets="Build">
     <PropertyGroup>
diff --git a/Installer/SetupSILConverters/packages.config b/Installer/SetupSILConverters/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/SetupSILConverters/packages.config
+++ b/Installer/SetupSILConverters/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
index f98f4ca9..8d1c0b5f 100644
--- a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
+++ b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x64</Platform>
@@ -38,8 +38,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackage64bitMM/packages.config b/Installer/TECkitPackage64bitMM/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/TECkitPackage64bitMM/packages.config
+++ b/Installer/TECkitPackage64bitMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
index 6e155aa0..d43e4c88 100644
--- a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
+++ b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -38,8 +38,8 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackageMM/packages.config b/Installer/TECkitPackageMM/packages.config
index 42f10aa9..d556b890 100644
--- a/Installer/TECkitPackageMM/packages.config
+++ b/Installer/TECkitPackageMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" />
+  <package id="Encoding-Converters-Core" version="0.5.5" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
index 68e687ce..4a5c7491 100644
--- a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
+++ b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -204,6 +204,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/packages.config b/src/AdaptIt2Unicode/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/AdaptIt2Unicode/packages.config
+++ b/src/AdaptIt2Unicode/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/SFMConv.csproj b/src/BulkSFMConverter/SFMConv.csproj
index d6a36d33..648d7735 100644
--- a/src/BulkSFMConverter/SFMConv.csproj
+++ b/src/BulkSFMConverter/SFMConv.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -84,6 +84,8 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <ItemGroup>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -205,6 +207,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/packages.config b/src/BulkSFMConverter/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/BulkSFMConverter/packages.config
+++ b/src/BulkSFMConverter/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ClipboardEC/ClipboardEC.csproj b/src/ClipboardEC/ClipboardEC.csproj
index d3f479cc..1f78d241 100644
--- a/src/ClipboardEC/ClipboardEC.csproj
+++ b/src/ClipboardEC/ClipboardEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -109,6 +109,8 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <ItemGroup>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -196,6 +198,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ClipboardEC/packages.config b/src/ClipboardEC/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/ClipboardEC/packages.config
+++ b/src/ClipboardEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/DChartHelper/DChartHelper.csproj b/src/DChartHelper/DChartHelper.csproj
index 32ae205c..3c6263bb 100644
--- a/src/DChartHelper/DChartHelper.csproj
+++ b/src/DChartHelper/DChartHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -87,6 +87,8 @@
     <Reference Include="AIGuesserEC">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\AIGuesserEC.dll</HintPath>
     </Reference>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -253,6 +255,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/DChartHelper/packages.config b/src/DChartHelper/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/DChartHelper/packages.config
+++ b/src/DChartHelper/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index b0c2bc89..c550d7e4 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -75,6 +75,18 @@
     <Reference Include="AIGuesserEC" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\AIGuesserEC.dll</HintPath>
     </Reference>
+    <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
+    </Reference>
+    <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x64\ECInterfaces.dll</HintPath>
+    </Reference>
+    <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x86\SilEncConverters40.dll</HintPath>
+    </Reference>
+    <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x64\SilEncConverters40.dll</HintPath>
+    </Reference>
     <Reference Include="EcTranslators" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\EcTranslators.dll</HintPath>
     </Reference>
@@ -84,12 +96,6 @@
     <Reference Include="BackTranslationHelper" Condition="('$(OS)'=='Windows_NT')">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\BackTranslationHelper.dll</HintPath>
     </Reference>
-    <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
-      <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
-    </Reference>
-    <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
-      <HintPath>$(EcLibFilesPath)\net48\x64\ECInterfaces.dll</HintPath>
-    </Reference>
     <Reference Include="EmbeddedUiPluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
       <HintPath>..\..\packages\ParatextEmbeddedUiPluginInterfaces.2.0.21\lib\net48\EmbeddedUiPluginInterfaces.dll</HintPath>
     </Reference>
@@ -99,12 +105,6 @@
     <Reference Include="PluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
       <HintPath>..\..\packages\ParatextPluginInterfaces.2.0.21\lib\netstandard2.0\PluginInterfaces.dll</HintPath>
     </Reference>
-    <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
-      <HintPath>$(EcLibFilesPath)\net48\x86\SilEncConverters40.dll</HintPath>
-    </Reference>
-    <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
-      <HintPath>$(EcLibFilesPath)\net48\x64\SilEncConverters40.dll</HintPath>
-    </Reference>
     <Reference Include="Microsoft.VisualBasic" />
     <Reference Include="System">
       <HintPath>..\..\..\..\..\..\..\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.dll</HintPath>
@@ -227,6 +227,6 @@ ren "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(TargetFileName)" "$(Proje
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/packages.config b/src/ParatextPluginBackTranslationHelper/packages.config
index 1c238f83..d0b7a12f 100644
--- a/src/ParatextPluginBackTranslationHelper/packages.config
+++ b/src/ParatextPluginBackTranslationHelper/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.1" targetFramework="net48" />
   <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.21" targetFramework="net48" />
   <package id="ParatextPluginInterfaces" version="2.0.21" targetFramework="net48" />
diff --git a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
index 75d5f85f..b2b29f2b 100644
--- a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
+++ b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -107,6 +107,8 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <ItemGroup>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -242,6 +244,6 @@ xcopy /s /y "$(EcDistFilesPath)\redist\*.*" "$(SolutionDir)output\$(PlatformName
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersInstaller/packages.config b/src/SILConvertersInstaller/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SILConvertersInstaller/packages.config
+++ b/src/SILConvertersInstaller/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index 6b94caf8..d0246836 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -91,6 +91,8 @@
       <SpecificVersion>False</SpecificVersion>
       <HintPath>DistFiles\DAO.DLL</HintPath>
     </Reference>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -313,6 +315,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/packages.config b/src/SILConvertersOffice/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SILConvertersOffice/packages.config
+++ b/src/SILConvertersOffice/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/SILConvertersOffice07.csproj b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
index 9405bb50..bad6f752 100644
--- a/src/SILConvertersOffice07/SILConvertersOffice07.csproj
+++ b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -82,6 +82,8 @@
       <SpecificVersion>False</SpecificVersion>
       <HintPath>DistFiles\dao.dll</HintPath>
     </Reference>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -346,6 +348,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/packages.config b/src/SILConvertersOffice07/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SILConvertersOffice07/packages.config
+++ b/src/SILConvertersOffice07/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index 49a653da..a9a994c8 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -78,6 +78,8 @@
     <AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects>
   </PropertyGroup>
   <ItemGroup>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -340,6 +342,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/packages.config b/src/SILConvertersOffice10/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SILConvertersOffice10/packages.config
+++ b/src/SILConvertersOffice10/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index 85d4733f..b706f0ad 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -85,6 +85,8 @@
     <Reference Include="BackTranslationHelper">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\BackTranslationHelper.dll</HintPath>
     </Reference>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -354,6 +356,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/packages.config b/src/SILConvertersOffice13/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SILConvertersOffice13/packages.config
+++ b/src/SILConvertersOffice13/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/SILConvertersWordML.csproj b/src/SILConvertersWordML/SILConvertersWordML.csproj
index 2aba7719..73f58ea3 100644
--- a/src/SILConvertersWordML/SILConvertersWordML.csproj
+++ b/src/SILConvertersWordML/SILConvertersWordML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -87,6 +87,8 @@
     <Reference Include="AIGuesserEC">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\AIGuesserEC.dll</HintPath>
     </Reference>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -244,6 +246,6 @@
       <ErrorTextMissingPIA>This project references a Microsoft Office PIA file, which is required to be built against or it won't work for older versions of Word. The missing file needing to be restored is {0}.</ErrorTextMissingPIA>
     </PropertyGroup>
     <Error Condition="!Exists('..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll')" Text="$([System.String]::Format('$(ErrorTextMissingPIA)', 'Microsoft.Office.Interop.Word, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c expected to be in ..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 1cd54d0d..4215f33d 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" />
   <Import Project="..\..\..\packages\NUnit.3.13.3\build\NUnit.props" Condition="Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" />
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -76,8 +76,19 @@
     <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=MSIL">
-      <HintPath>..\..\..\packages\Encoding-Converters-Core.0.5.4\lib\net48\x86\ECInterfaces.dll</HintPath>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
+    <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
+    </Reference>
+    <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x64\ECInterfaces.dll</HintPath>
+    </Reference>
+    <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x86\SilEncConverters40.dll</HintPath>
+    </Reference>
+    <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
+      <HintPath>$(EcLibFilesPath)\net48\x64\SilEncConverters40.dll</HintPath>
     </Reference>
     <Reference Include="EmbeddedUiPluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
       <HintPath>..\..\..\packages\ParatextEmbeddedUiPluginInterfaces.2.0.21\lib\net48\EmbeddedUiPluginInterfaces.dll</HintPath>
@@ -93,9 +104,6 @@
     <Reference Include="PluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
       <HintPath>..\..\..\packages\ParatextPluginInterfaces.2.0.21\lib\netstandard2.0\PluginInterfaces.dll</HintPath>
     </Reference>
-    <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=MSIL">
-      <HintPath>..\..\..\packages\Encoding-Converters-Core.0.5.4\lib\net48\x86\SilEncConverters40.dll</HintPath>
-    </Reference>
     <Reference Include="System" />
     <Reference Include="System.Core">
       <RequiredTargetFramework>3.5</RequiredTargetFramework>
@@ -422,9 +430,9 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
     <Error Condition="!Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit.3.13.3\build\NUnit.props'))" />
     <Error Condition="!Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
   <ProjectExtensions>
     <VisualStudio>
diff --git a/src/SILConvertersWordML/TestBwdc/packages.config b/src/SILConvertersWordML/TestBwdc/packages.config
index aaf29458..0b11be74 100644
--- a/src/SILConvertersWordML/TestBwdc/packages.config
+++ b/src/SILConvertersWordML/TestBwdc/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
   <package id="Microsoft.CSharp" version="4.7.0" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.1" targetFramework="net48" />
   <package id="NUnit" version="3.13.3" targetFramework="net48" />
diff --git a/src/SILConvertersWordML/packages.config b/src/SILConvertersWordML/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SILConvertersWordML/packages.config
+++ b/src/SILConvertersWordML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SilConvertersXML/SilConvertersXML.csproj b/src/SilConvertersXML/SilConvertersXML.csproj
index b1bbda8f..df744f05 100644
--- a/src/SilConvertersXML/SilConvertersXML.csproj
+++ b/src/SilConvertersXML/SilConvertersXML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -83,6 +83,8 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <ItemGroup>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -220,6 +222,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SilConvertersXML/packages.config b/src/SilConvertersXML/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SilConvertersXML/packages.config
+++ b/src/SilConvertersXML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index b9d2c336..237fd190 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -107,6 +107,8 @@
     <Reference Include="CcEC">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\CcEC.dll</HintPath>
     </Reference>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -233,6 +235,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/packages.config b/src/SpellingFixerEC/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/SpellingFixerEC/packages.config
+++ b/src/SpellingFixerEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj
index 0d173fc2..c013e442 100644
--- a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
+++ b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -88,6 +88,8 @@
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
   </PropertyGroup>
   <ItemGroup>
+    <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
+			you might want to manually add to the csproj file instead-->
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -237,6 +239,6 @@ xcopy /y "$(ProjectDir)UnicodeRanges.xml" "$(SolutionDir)output\$(PlatformName)\
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.4\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/packages.config b/src/TECkit Mapping Editor/packages.config
index 59d699ac..dce80ccc 100644
--- a/src/TECkit Mapping Editor/packages.config	
+++ b/src/TECkit Mapping Editor/packages.config	
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.4" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
 </packages>
\ No newline at end of file

From 390b116932ff075bab1e5864e652980df74ae6c4 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 25 Feb 2023 10:01:25 -0600
Subject: [PATCH 15/71] update to latest ptx plugin nuget

---
 .../ParatextPluginBackTranslationHelper.csproj | 18 +++++++++---------
 .../packages.config                            |  6 +++---
 .../TestBwdc/TestBwdc.csproj                   | 18 +++++++++---------
 .../TestBwdc/packages.config                   |  6 +++---
 4 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index c550d7e4..e8bd3bbc 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -81,6 +81,15 @@
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x64\ECInterfaces.dll</HintPath>
     </Reference>
+    <Reference Include="EmbeddedUiPluginInterfaces, Version=2.0.23.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
+      <HintPath>..\..\packages\ParatextEmbeddedUiPluginInterfaces.2.0.23\lib\net48\EmbeddedUiPluginInterfaces.dll</HintPath>
+    </Reference>
+    <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+      <HintPath>..\..\packages\Newtonsoft.Json.13.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
+    </Reference>
+    <Reference Include="PluginInterfaces, Version=2.0.23.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
+      <HintPath>..\..\packages\ParatextPluginInterfaces.2.0.23\lib\netstandard2.0\PluginInterfaces.dll</HintPath>
+    </Reference>
     <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\SilEncConverters40.dll</HintPath>
     </Reference>
@@ -96,15 +105,6 @@
     <Reference Include="BackTranslationHelper" Condition="('$(OS)'=='Windows_NT')">
       <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\BackTranslationHelper.dll</HintPath>
     </Reference>
-    <Reference Include="EmbeddedUiPluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
-      <HintPath>..\..\packages\ParatextEmbeddedUiPluginInterfaces.2.0.21\lib\net48\EmbeddedUiPluginInterfaces.dll</HintPath>
-    </Reference>
-    <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
-      <HintPath>..\..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
-    </Reference>
-    <Reference Include="PluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
-      <HintPath>..\..\packages\ParatextPluginInterfaces.2.0.21\lib\netstandard2.0\PluginInterfaces.dll</HintPath>
-    </Reference>
     <Reference Include="Microsoft.VisualBasic" />
     <Reference Include="System">
       <HintPath>..\..\..\..\..\..\..\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.dll</HintPath>
diff --git a/src/ParatextPluginBackTranslationHelper/packages.config b/src/ParatextPluginBackTranslationHelper/packages.config
index d0b7a12f..e89a57ae 100644
--- a/src/ParatextPluginBackTranslationHelper/packages.config
+++ b/src/ParatextPluginBackTranslationHelper/packages.config
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
   <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
-  <package id="Newtonsoft.Json" version="13.0.1" targetFramework="net48" />
-  <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.21" targetFramework="net48" />
-  <package id="ParatextPluginInterfaces" version="2.0.21" targetFramework="net48" />
+  <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
+  <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.23" targetFramework="net48" />
+  <package id="ParatextPluginInterfaces" version="2.0.23" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 4215f33d..78034b5f 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -84,26 +84,26 @@
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x64\ECInterfaces.dll</HintPath>
     </Reference>
+    <Reference Include="EmbeddedUiPluginInterfaces, Version=2.0.23.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
+      <HintPath>..\..\..\packages\ParatextEmbeddedUiPluginInterfaces.2.0.23\lib\net48\EmbeddedUiPluginInterfaces.dll</HintPath>
+    </Reference>
+    <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+      <HintPath>..\..\..\packages\Newtonsoft.Json.13.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
+    </Reference>
+    <Reference Include="PluginInterfaces, Version=2.0.23.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
+      <HintPath>..\..\..\packages\ParatextPluginInterfaces.2.0.23\lib\netstandard2.0\PluginInterfaces.dll</HintPath>
+    </Reference>
     <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\SilEncConverters40.dll</HintPath>
     </Reference>
     <Reference Include="SilEncConverters40, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x64" Condition="('$(Platform)' == 'x64') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x64\SilEncConverters40.dll</HintPath>
     </Reference>
-    <Reference Include="EmbeddedUiPluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
-      <HintPath>..\..\..\packages\ParatextEmbeddedUiPluginInterfaces.2.0.21\lib\net48\EmbeddedUiPluginInterfaces.dll</HintPath>
-    </Reference>
     <Reference Include="Microsoft.CSharp" />
     <Reference Include="Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />
-    <Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
-      <HintPath>..\..\..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
-    </Reference>
     <Reference Include="nunit.framework, Version=3.13.3.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
       <HintPath>..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll</HintPath>
     </Reference>
-    <Reference Include="PluginInterfaces, Version=2.0.21.0, Culture=neutral, PublicKeyToken=583bede96b7c94a3, processorArchitecture=MSIL">
-      <HintPath>..\..\..\packages\ParatextPluginInterfaces.2.0.21\lib\netstandard2.0\PluginInterfaces.dll</HintPath>
-    </Reference>
     <Reference Include="System" />
     <Reference Include="System.Core">
       <RequiredTargetFramework>3.5</RequiredTargetFramework>
diff --git a/src/SILConvertersWordML/TestBwdc/packages.config b/src/SILConvertersWordML/TestBwdc/packages.config
index 0b11be74..4115ad13 100644
--- a/src/SILConvertersWordML/TestBwdc/packages.config
+++ b/src/SILConvertersWordML/TestBwdc/packages.config
@@ -2,9 +2,9 @@
 <packages>
   <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
   <package id="Microsoft.CSharp" version="4.7.0" targetFramework="net48" />
-  <package id="Newtonsoft.Json" version="13.0.1" targetFramework="net48" />
+  <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="NUnit" version="3.13.3" targetFramework="net48" />
   <package id="NUnit3TestAdapter" version="4.3.1" targetFramework="net48" />
-  <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.21" targetFramework="net48" />
-  <package id="ParatextPluginInterfaces" version="2.0.21" targetFramework="net48" />
+  <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.23" targetFramework="net48" />
+  <package id="ParatextPluginInterfaces" version="2.0.23" targetFramework="net48" />
 </packages>
\ No newline at end of file

From a48e8cb0848c3aecfde9d6a270d6a19c16db0b33 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Tue, 7 Mar 2023 06:31:52 -0600
Subject: [PATCH 16/71] adjusted how we're marking text dirty -- via the
 ScriptureDataChangedHandler methods rather than just that we've 'Deactivated'
 (with the former, we *know* the text has changed).

---
 .../BackTranslationHelperForm.cs              | 44 +++++++++++++++++--
 1 file changed, 40 insertions(+), 4 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 59213190..949037e0 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -101,14 +101,39 @@ private static string GetProjectName(IProject projectSource, IProject projectTar
             return String.Format(ProjectNameFormat, projectSource, projectTarget);
         }
 
+        private bool IsDirty(IVerseRef verseReference, int bookNum, int chapterNum)
+        {
+            return ((bookNum == 0) || (verseReference.BookNum == bookNum)) && ((chapterNum == 0) || (verseReference.ChapterNum == chapterNum));
+        }
+
         private void ScriptureDataChangedHandlerSource(IProject sender, int bookNum, int chapterNum)
         {
-            Unlock();
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: ScriptureDataChangedHandlerSource: bookNum = '{bookNum}', chapterNum = ‘{chapterNum}‘, IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}");
+
+            // if the change was in the chapter we're processing, then clear what we think the data is, so we'll repull it later
+            if (IsDirty(_verseReference, bookNum, chapterNum))
+                UsfmTokensSource.Clear();
         }
 
         private void ScriptureDataChangedHandlerTarget(IProject sender, int bookNum, int chapterNum)
         {
-            Unlock();
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: ScriptureDataChangedHandlerTarget: bookNum = '{bookNum}', chapterNum = ‘{chapterNum}‘, IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}, _isChangingTarget: {_isChangingTarget}");
+            if (_isChangingTarget)  // if we're the ones who changed it, then ignore
+                return;
+
+            // if the change was in the chapter we're processing, then clear what we think the data is, so we'll repull it later
+            if (IsDirty(_verseReference, bookNum, chapterNum))
+                UsfmTokensTarget.Clear();
+
+#if TriedAndFailed
+            // UPDATE: Ptx by definition has the write lock right now, so we can't call GetNewReference here
+            //  Go back to calling it in Activate
+            // unless we were editing it, and then force it to stay the same
+            if (backTranslationHelperCtrl.IsModified)
+                return;
+
+            GetNewReference(_verseReference);
+#endif
         }
 
         private void Host_VerseRefChanged(IPluginHost sender, IVerseRef newReference, SyncReferenceGroup group)
@@ -213,7 +238,7 @@ private string CurrentSourceData
                 }
                 else
                 {
-                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Already load UsfmTokensSource for {keyBookChapterVerse}");
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Already have UsfmTokensSource for {keyBookChapterVerse}");
                 }
 
                 var data = tokens.OfType<IUSFMTextToken>()
@@ -256,7 +281,7 @@ private string CurrentTargetData
                 }
                 else
                 {
-                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Already load UsfmTokensTarget for {bookChapterKey}");
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: Already have UsfmTokensTarget for {bookChapterKey}");
                 }
 
                 var bookChapterVerseKey = GetBookChapterVerseKey(_verseReference);
@@ -371,6 +396,8 @@ void IBackTranslationHelperDataSource.MoveToNext()
             _setSyncReferenceGroup(_verseReference);
         }
 
+        private bool _isChangingTarget { get; set; }
+
         bool IBackTranslationHelperDataSource.WriteToTarget(string text)
         {
             try
@@ -398,9 +425,11 @@ bool IBackTranslationHelperDataSource.WriteToTarget(string text)
                     return false;
                 }
 
+                _isChangingTarget = true;
                 _writeLock ??= _projectTarget.RequestWriteLock(_plugin, ReleaseRequested, _verseReference.BookNum, _verseReference.ChapterNum);
 
                 var tokens = vrefTokensTarget.SelectMany(d => d.Value).ToList();
+
                 _projectTarget.PutUSFMTokens(_writeLock, tokens, _verseReference.BookNum);
                 Unlock();
                 return true;
@@ -409,6 +438,10 @@ bool IBackTranslationHelperDataSource.WriteToTarget(string text)
             {
                 MessageBox.Show($"Exception caught:\n{ex.Message}");
             }
+            finally
+            {
+                _isChangingTarget = false;
+            }
             return false;
         }
 
@@ -727,6 +760,8 @@ private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
             _isNotInFocus = false;
             System.Diagnostics.Debug.WriteLine($"PtxBTH: BackTranslationHelperForm_Activated: _isNotInFocus = '{_isNotInFocus}', IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}");
 
+#if false
+            // THIS is now done in ScriptureDataChangedHandlerSource & ScriptureDataChangedHandlerTarget
             // make the source and target data stale, and trigger a requery...
             PurgeSourceData(_verseReference);
 
@@ -735,6 +770,7 @@ private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
             {
                 UsfmTokensTarget.Remove(bookChapterKey);
             }
+#endif
 
             // unless we were editing it, and then force it to stay the same
             if (backTranslationHelperCtrl.IsModified)

From 1d704932e366b9623de2eccf66fa92c743902adf Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 8 Mar 2023 09:55:45 -0600
Subject: [PATCH 17/71] clean up several things the compiler is warning about
 (unused functions or standard naming for variables)

---
 .../BackTranslationHelperForm.cs              | 27 +++++--------------
 .../ParatextBackTranslationHelperPlugin.cs    |  2 +-
 2 files changed, 7 insertions(+), 22 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 949037e0..4fbc24d8 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -117,8 +117,8 @@ private void ScriptureDataChangedHandlerSource(IProject sender, int bookNum, int
 
         private void ScriptureDataChangedHandlerTarget(IProject sender, int bookNum, int chapterNum)
         {
-            System.Diagnostics.Debug.WriteLine($"PtxBTH: ScriptureDataChangedHandlerTarget: bookNum = '{bookNum}', chapterNum = ‘{chapterNum}‘, IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}, _isChangingTarget: {_isChangingTarget}");
-            if (_isChangingTarget)  // if we're the ones who changed it, then ignore
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: ScriptureDataChangedHandlerTarget: bookNum = '{bookNum}', chapterNum = ‘{chapterNum}‘, IsModified: {backTranslationHelperCtrl.IsModified}, _verseReference: {_verseReference}, _isChangingTarget: {AreWeChangingTheTarget}");
+            if (AreWeChangingTheTarget)  // if we're the ones who changed it, then ignore
                 return;
 
             // if the change was in the chapter we're processing, then clear what we think the data is, so we'll repull it later
@@ -396,7 +396,7 @@ void IBackTranslationHelperDataSource.MoveToNext()
             _setSyncReferenceGroup(_verseReference);
         }
 
-        private bool _isChangingTarget { get; set; }
+        private bool AreWeChangingTheTarget { get; set; }
 
         bool IBackTranslationHelperDataSource.WriteToTarget(string text)
         {
@@ -425,7 +425,7 @@ bool IBackTranslationHelperDataSource.WriteToTarget(string text)
                     return false;
                 }
 
-                _isChangingTarget = true;
+                AreWeChangingTheTarget = true;
                 _writeLock ??= _projectTarget.RequestWriteLock(_plugin, ReleaseRequested, _verseReference.BookNum, _verseReference.ChapterNum);
 
                 var tokens = vrefTokensTarget.SelectMany(d => d.Value).ToList();
@@ -440,7 +440,7 @@ bool IBackTranslationHelperDataSource.WriteToTarget(string text)
             }
             finally
             {
-                _isChangingTarget = false;
+                AreWeChangingTheTarget = false;
             }
             return false;
         }
@@ -677,19 +677,13 @@ public static IUSFMToken ParagraphToken(Dictionary<string, List<IUSFMToken>> usf
             return new MarkerToken(paragraphToken, previousTextToken.VerseOffset + previousTextToken.Text.Length, previousTextToken.VerseRef);
         }
 
-        private static readonly List<string> _paragraphMarkers = new List<string> { "p", "m" };
+        private static readonly List<string> _paragraphMarkers = new() { "p", "m" };
 
         private static bool IsParagraphToken(IUSFMToken token)
         {
             return (token is IUSFMMarkerToken markerToken) && (markerToken.Type == MarkerType.Paragraph) && _paragraphMarkers.Contains(markerToken.Marker);
         }
 
-        protected override void OnShown(EventArgs e)
-        {
-            base.OnShown(e);
-            GetNewReference(_verseReference);
-        }
-
         private void BackTranslationHelperForm_Load(object sender, EventArgs e)
         {
             Text = GetFrameText(_projectSource, _projectTarget, _verseReference);
@@ -746,15 +740,6 @@ private void BackTranslationHelperForm_Deactivate(object sender, EventArgs e)
             //    return;
         }
 
-        private void PurgeSourceData(IVerseRef verseReference)
-        {
-            var keyBookChapterVerse = GetBookChapterVerseKey(verseReference);
-            if (UsfmTokensSource.ContainsKey(keyBookChapterVerse))
-            {
-                UsfmTokensSource.Remove(keyBookChapterVerse);
-            }
-        }
-
         private void BackTranslationHelperForm_Activated(object sender, EventArgs e)
         {
             _isNotInFocus = false;
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextBackTranslationHelperPlugin.cs b/src/ParatextPluginBackTranslationHelper/ParatextBackTranslationHelperPlugin.cs
index 60b0304c..114b6fd6 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextBackTranslationHelperPlugin.cs
+++ b/src/ParatextPluginBackTranslationHelper/ParatextBackTranslationHelperPlugin.cs
@@ -16,7 +16,7 @@ public class ParatextBackTranslationHelperPlugin : IParatextStandalonePlugin
 		public const string PluginName = "Back Translation Helper";
 		public const string emailAddress = "silconverters_support@sil.org";
 		public string Name => PluginName;
-		public Version Version => new Version(1, 0);
+		public Version Version => new(1, 0);
 		public string VersionString => Version.ToString();
 		public string Publisher => "SIL/UBS";
 

From 4a9f51d66a23b410549fdedf1b3bf49c446399fc Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 10 Mar 2023 10:58:20 -0600
Subject: [PATCH 18/71] redo CalculateTargetTokens so that it always replicates
 the source markers to replace the target markers. We might not have enough
 translated lines for the source, but in any case, the source is what we're
 trying to back-translate; not merging with what's currently in the target
 (which could be problematic).

---
 .../BackTranslationHelperForm.cs              | 137 +++++-------------
 1 file changed, 33 insertions(+), 104 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 4fbc24d8..de7d01ac 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -484,117 +484,68 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
             if ((translatedValues == null) || !translatedValues.Any())    // nothing to do
                 return null;
 
-            // go thru all the ones we had and put the translated text into the text ones and transfer the non-text ones in order into the list to Put
+            // get the relevant target token collection (for the verse we're editing), so we can replace them.
             var keyBookChapter = GetBookChapterKey(verseReference);
             if (!usfmTokensTarget.TryGetValue(keyBookChapter, out SortedDictionary<string, List<IUSFMToken>> vrefTokensTarget))
-            {
                 return null;
-            }
 
-            // get the source project tokens (in case we need to copy from them)
+            // get the source project tokens (so we can use those in the target project)
+            // if by chance, there are non, then it must be that we marked them 'dirty', so just return mull 
+            //  to have them be requeried
             var keyBookChapterVerse = GetBookChapterVerseKey(verseReference);
-            var sourceTokensFound = usfmTokensSource.TryGetValue(keyBookChapterVerse, out List<IUSFMToken> tokensSource);
-
-            var keyBookChapterVerses = GetBookChapterVerseKey(versesReference);
-            // get the USFM tokens for the corresponding verse in the target project (if we don't have at least 1 IUSFMTextToken...
-            if (!vrefTokensTarget.TryGetValue(keyBookChapterVerses, out List<IUSFMToken> tokensTarget) ||
-                !tokensTarget.Any(t => t is IUSFMTextToken))
-            {
-                // ... it could be that the user didn't put in any verse number/paragraphs/text yet... so just make a copy of the source tokens
-                //  which will be replaced w/ the translated text below
-                if (!sourceTokensFound)
-                {
-                    // if we didn't find those, then we'll have to start over
+            if (!usfmTokensSource.TryGetValue(keyBookChapterVerse, out List<IUSFMToken> tokensSource))
                     return null;
-                }
-                else
-                    tokensTarget = tokensSource;
 
-                // it may have some verses, but no IUSFMTextTokens among them...
+            // NB: for reasons that are not clear, I was trying to maintain the markers that were in the target project 
+            //  and put the translated lines in those... but the entire point of this plugin is to make a back translation
+            //  of the *source* project. So why wouldn't I just use the source project's tokens and put the translated 
+            //  bits in them.
+            //  There may be fewer translated lines in the 'Target Translation' box than there were IUSFMTextToken in
+            //  the source -- esp. if it the user started with the data from the existing Target project. But we'll just
+            //  have to warn the user thru the UI of that issue.
+            //  Bottom line, fit the translated lines into the IUSFMTextToken tokens of the *source* project in order 
+            //  (until we run out), and if there are more translated lines than IUSFMTextToken tokens, just add them as
+            //  '\p's and let the user edit them in Paratext after we write them out to the target project
+            // BUT one issue does arise: if the source has a multiple combined verses and the target doesn't (or vice-versa)
+            //  then we'll need to purge the existing (target) verse(s) so we can add the new (source-based) ones.
+
+            // get the reference to the USFM tokens for the corresponding verse in the target project. If we don't
+            //  have any, it probably means that the user didn't have any data in the target project yet... But 
+            //  it doesn't really matter, bkz we're just going to replace them with a copy of the source tokens
+            //  anyway, which will be replaced w/ the translated text below
+            var keyBookChapterVerses = GetBookChapterVerseKey(versesReference);
+            var tokensTarget = tokensSource;
                 if (vrefTokensTarget.ContainsKey(keyBookChapterVerse))
-                    vrefTokensTarget[keyBookChapterVerse] = tokensTarget;
+                vrefTokensTarget[keyBookChapterVerse] = tokensSource;
                 else
-                    vrefTokensTarget.Add(keyBookChapterVerses, tokensTarget);
-            }
+                vrefTokensTarget.Add(keyBookChapterVerses, tokensSource);
 
-            // tokensTarget now contains just the tokens for the current verse
+            // go thru all the ones we had and put the translated text into the text ones and transfer the non-text ones in order into the list to Put
             var i = 0;
-            var purgedSomeParagraphs = false;
-            var lastTokenWasText = false;
             TextToken latestTextToken = null;
             var updatedTokens = new List<IUSFMToken>();
-            var countFewerTextTokensInTranslation = (tokensTarget.Count(t => t is IUSFMTextToken) - translatedValues.Count);
             foreach (var token in tokensTarget)
             {
                 IUSFMToken updatedToken = token;
                 if ((token is IUSFMTextToken textToken) && textToken.IsPublishableVernacular && IsMatchingVerse((IVerseRef)textToken.VerseRef, verseReference))
                 {
-                    if ((i >= translatedValues.Count) || (purgedSomeParagraphs && lastTokenWasText))
-                    {
-                        // this means the source had multiple paragraphs, so ignore this unnecessary (source) text token
-                        purgedSomeParagraphs = true;
-                        continue;
-                    }
-
                     latestTextToken = new TextToken(textToken)
                     {
-                        Text = translatedValues[i++]
+                        Text = (i >= translatedValues.Count)
+                                    ? String.Empty              // empty the source text, bkz we ran out of translated lines
+                                    : translatedValues[i++]
                     };
                     updatedToken = latestTextToken;
                 }
 
-                // if we have fewer lines than the source had, then skip adding any more paragraph markers unless it's the final token
-                if ((countFewerTextTokensInTranslation > 0) && IsParagraphToken(token) && (!IsParagraphToken(tokensTarget.Last()) || (token != tokensTarget.Last())))
-                {
-                    // this means we want to skip this paragraph token
-                    purgedSomeParagraphs = true;
-                    countFewerTextTokensInTranslation--;
-                    continue;
-                }
-
-                lastTokenWasText = IsScriptureTextToken(updatedToken);
                 updatedTokens.Add(updatedToken);
             }
 
-            if (latestTextToken == null)
-            {
-                // this means the target (and source) verse had no IUSFMTextToken in it
-                // so there's nothing to do?
-                return null;
-            }
-
-            // if there are still some translated portions we haven't processed yet, then insert them as copies of the last one we did
-            //  just after the last one we did (w/ a paragraph token before it).
-            // if there are other markers *after* the last text token (e.g. a final paragraph token), then put the text (along
-            //  with a preceding paragraph token) just after the last text token we added above
+            // if there are still some translated portions we haven't processed yet, then insert them as copies of the last text 
+            //  one we did just after the last one we did (w/ a paragraph token before it).
             var insertionIndex = updatedTokens.Count;
-            var lastTokenIsParagraph = IsParagraphToken(updatedTokens.Last());
-            if (lastTokenIsParagraph)
-                insertionIndex--;
-
             while (translatedValues.Count > i)
             {
-                // first skip past any markers common to both (but not if the final one was a \p
-                if (!lastTokenIsParagraph)
-                    SkipPastIdenticalTokens(tokensSource, updatedTokens, ref insertionIndex);
-
-                // if the source has one or more (non-scripture) markers at the next insertion point, we want to add them here.
-                //  But the 'NextTokenFromSource*' function below will return a newly created paragraph (e.g. to put before 
-                //  a translated lines) if we run out of stuff in the source. In that case, only do this loop once
-                var isInsertedParagraph = false;
-                do
-                {
-                    // first see if the next token in the source is a marker
-                    isInsertedParagraph = NextTokenFromSourceOrTemplateParagraphMarker(out IUSFMToken marker);
-
-                    // if it's a text token, then skip adding it here and add it as a text token below
-                    if (IsScriptureTextToken(marker))
-                        break;
-
-                    // add the non-text (read: marker) token first (and repeat of there are others)
-                    updatedTokens.Insert(insertionIndex++, marker);
-                } while (!isInsertedParagraph);
-                    
                 // using the last text token we saw in the target as a template (which could possibly be from the source (read: untranslated)),
                 //  create a new one w/ the next translated value
                 latestTextToken = new TextToken(latestTextToken)
@@ -605,15 +556,6 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
                 updatedTokens.Insert(insertionIndex++, latestTextToken);
             }
 
-            // in case the last one in the target happens to be common...
-            SkipPastIdenticalTokens(tokensSource, updatedTokens, ref insertionIndex);
-
-            // add any remaining ones that are in the source, but not in the target
-            while (!purgedSomeParagraphs && (insertionIndex < tokensSource.Count))
-            {
-                updatedTokens.Add(tokensSource[insertionIndex++]);
-            }
-
             vrefTokensTarget[keyBookChapterVerses] = updatedTokens;
 
 #if SerializeToCreateTestFiles
@@ -621,6 +563,7 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
 #endif
 
             return vrefTokensTarget;
+        }
 
             // local function (to reduce the number of parameters needing to be passed)
             bool NextTokenFromSourceOrTemplateParagraphMarker(out IUSFMToken marker)
@@ -645,20 +588,6 @@ private static string ToJson(object obj)
         }
 #endif
 
-        private static bool IsScriptureTextToken(IUSFMToken token)
-        {
-            return (token is IUSFMTextToken textToken) && textToken.IsPublishableVernacular;
-        }
-
-        private static void SkipPastIdenticalTokens(List<IUSFMToken> tokensSource, List<IUSFMToken> updatedTokens, ref int insertionIndex)
-        {
-            while ((insertionIndex < updatedTokens.Count) && (insertionIndex < tokensSource.Count) &&
-                   (updatedTokens[insertionIndex].ToString() == tokensSource[insertionIndex].ToString()))
-            {
-                insertionIndex++;
-            }
-        }
-
         public static IUSFMToken ParagraphToken(Dictionary<string, List<IUSFMToken>> usfmTokensSource, 
             Dictionary<string, SortedDictionary<string, List<IUSFMToken>>> usfmTokensTarget, TextToken previousTextToken)
         {

From 92425b3ed201a52d021d5d2cf6c8ecf317396256 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 11 Mar 2023 05:59:30 -0600
Subject: [PATCH 19/71] re-created a number of Forms used in the 'SpellFixer'
 (aka. Find-Replace) project to make them more current and behave nicer (also
 got rid of supporting legacy encodings -- anyone not using Unicode by now
 needs to feel the pain). Also includes adding a dummy rule (\u001f => \u001f)
 to the underlying cc table so that it won't generate the 'there are no rules'
 exception.

---
 .../AddNewProjectForm.Designer.cs             | 250 +++++
 src/SpellingFixerEC/AddNewProjectForm.cs      | 203 ++++
 src/SpellingFixerEC/AddNewProjectForm.resx    | 132 +++
 src/SpellingFixerEC/LoginSF.Designer.cs       | 198 ++++
 src/SpellingFixerEC/LoginSF.cs                | 949 +++---------------
 src/SpellingFixerEC/LoginSF.resx              |   6 -
 .../QueryFindReplaceDialog.Designer.cs        | 122 ++-
 src/SpellingFixerEC/QueryFindReplaceDialog.cs |  39 +-
 src/SpellingFixerEC/SpellingFixerEC.cs        | 108 +-
 src/SpellingFixerEC/SpellingFixerEC.csproj    |  12 +
 src/SpellingFixerEC/ViewBadGoodPairsDlg.cs    | 228 +----
 .../ViewBadGoodPairsDlg.designer.cs           |  58 +-
 src/SpellingFixerEC/ViewBadGoodPairsDlg.resx  |  16 +-
 13 files changed, 1125 insertions(+), 1196 deletions(-)
 create mode 100644 src/SpellingFixerEC/AddNewProjectForm.Designer.cs
 create mode 100644 src/SpellingFixerEC/AddNewProjectForm.cs
 create mode 100644 src/SpellingFixerEC/AddNewProjectForm.resx
 create mode 100644 src/SpellingFixerEC/LoginSF.Designer.cs

diff --git a/src/SpellingFixerEC/AddNewProjectForm.Designer.cs b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
new file mode 100644
index 00000000..78e7e098
--- /dev/null
+++ b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
@@ -0,0 +1,250 @@
+namespace SpellingFixerEC
+{
+    partial class AddNewProjectForm
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AddNewProjectForm));
+            this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
+            this.labelName = new System.Windows.Forms.Label();
+            this.textBoxName = new System.Windows.Forms.TextBox();
+            this.labelFont = new System.Windows.Forms.Label();
+            this.buttonChooseFont = new System.Windows.Forms.Button();
+            this.labelFontChosen = new System.Windows.Forms.Label();
+            this.checkBoxRtL = new System.Windows.Forms.CheckBox();
+            this.labelWordBoundaryDelimiter = new System.Windows.Forms.Label();
+            this.textBoxWordBoundaryDelimiter = new System.Windows.Forms.TextBox();
+            this.labelAddlPunct = new System.Windows.Forms.Label();
+            this.textBoxAddlPunctuation = new System.Windows.Forms.TextBox();
+            this.buttonCancel = new System.Windows.Forms.Button();
+            this.buttonOk = new System.Windows.Forms.Button();
+            this.toolTips = new System.Windows.Forms.ToolTip(this.components);
+            this.fontDialog = new System.Windows.Forms.FontDialog();
+            this.tableLayoutPanel.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // tableLayoutPanel
+            // 
+            this.tableLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tableLayoutPanel.ColumnCount = 3;
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 120F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel.Controls.Add(this.labelName, 0, 0);
+            this.tableLayoutPanel.Controls.Add(this.textBoxName, 1, 0);
+            this.tableLayoutPanel.Controls.Add(this.labelFont, 0, 1);
+            this.tableLayoutPanel.Controls.Add(this.buttonChooseFont, 1, 1);
+            this.tableLayoutPanel.Controls.Add(this.labelFontChosen, 2, 1);
+            this.tableLayoutPanel.Controls.Add(this.checkBoxRtL, 1, 2);
+            this.tableLayoutPanel.Controls.Add(this.labelWordBoundaryDelimiter, 0, 3);
+            this.tableLayoutPanel.Controls.Add(this.textBoxWordBoundaryDelimiter, 1, 3);
+            this.tableLayoutPanel.Controls.Add(this.labelAddlPunct, 0, 4);
+            this.tableLayoutPanel.Controls.Add(this.textBoxAddlPunctuation, 1, 4);
+            this.tableLayoutPanel.Controls.Add(this.buttonCancel, 2, 5);
+            this.tableLayoutPanel.Controls.Add(this.buttonOk, 1, 5);
+            this.tableLayoutPanel.Location = new System.Drawing.Point(12, 12);
+            this.tableLayoutPanel.Name = "tableLayoutPanel";
+            this.tableLayoutPanel.RowCount = 6;
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel.Size = new System.Drawing.Size(439, 291);
+            this.tableLayoutPanel.TabIndex = 15;
+            // 
+            // labelName
+            // 
+            this.labelName.Anchor = System.Windows.Forms.AnchorStyles.Right;
+            this.labelName.AutoSize = true;
+            this.labelName.Location = new System.Drawing.Point(79, 18);
+            this.labelName.Name = "labelName";
+            this.labelName.Size = new System.Drawing.Size(38, 13);
+            this.labelName.TabIndex = 16;
+            this.labelName.Text = "&Name:";
+            // 
+            // textBoxName
+            // 
+            this.textBoxName.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.tableLayoutPanel.SetColumnSpan(this.textBoxName, 2);
+            this.textBoxName.Location = new System.Drawing.Point(123, 15);
+            this.textBoxName.Name = "textBoxName";
+            this.textBoxName.Size = new System.Drawing.Size(313, 20);
+            this.textBoxName.TabIndex = 17;
+            this.toolTips.SetToolTip(this.textBoxName, "Enter the name of a new projects (e.g. \'Hindi to English fixes\')");
+            // 
+            // labelFont
+            // 
+            this.labelFont.Anchor = System.Windows.Forms.AnchorStyles.Right;
+            this.labelFont.AutoSize = true;
+            this.labelFont.Location = new System.Drawing.Point(86, 68);
+            this.labelFont.Name = "labelFont";
+            this.labelFont.Size = new System.Drawing.Size(31, 13);
+            this.labelFont.TabIndex = 16;
+            this.labelFont.Text = "Font:";
+            // 
+            // buttonChooseFont
+            // 
+            this.buttonChooseFont.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.buttonChooseFont.Location = new System.Drawing.Point(123, 63);
+            this.buttonChooseFont.Name = "buttonChooseFont";
+            this.buttonChooseFont.Size = new System.Drawing.Size(84, 23);
+            this.buttonChooseFont.TabIndex = 18;
+            this.buttonChooseFont.Text = "Choose &Font";
+            this.toolTips.SetToolTip(this.buttonChooseFont, "Click to choose the font to be used for displaying the Find-Replace pairs (e.g. \'" +
+        "Arial Unicode MS, 12 pt\')");
+            this.buttonChooseFont.UseVisualStyleBackColor = true;
+            this.buttonChooseFont.Click += new System.EventHandler(this.ButtonChooseFont_Click);
+            // 
+            // labelFontChosen
+            // 
+            this.labelFontChosen.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.labelFontChosen.Location = new System.Drawing.Point(227, 66);
+            this.labelFontChosen.Name = "labelFontChosen";
+            this.labelFontChosen.Size = new System.Drawing.Size(209, 18);
+            this.labelFontChosen.TabIndex = 19;
+            // 
+            // checkBoxRtL
+            // 
+            this.checkBoxRtL.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.checkBoxRtL.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
+            this.checkBoxRtL.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.checkBoxRtL.Location = new System.Drawing.Point(123, 113);
+            this.checkBoxRtL.Name = "checkBoxRtL";
+            this.checkBoxRtL.Size = new System.Drawing.Size(98, 24);
+            this.checkBoxRtL.TabIndex = 20;
+            this.checkBoxRtL.Text = "&Right-to-Left";
+            this.toolTips.SetToolTip(this.checkBoxRtL, "Check this if the data is right-to-left");
+            // 
+            // labelWordBoundaryDelimiter
+            // 
+            this.labelWordBoundaryDelimiter.Anchor = System.Windows.Forms.AnchorStyles.Right;
+            this.labelWordBoundaryDelimiter.Location = new System.Drawing.Point(36, 165);
+            this.labelWordBoundaryDelimiter.Name = "labelWordBoundaryDelimiter";
+            this.labelWordBoundaryDelimiter.Size = new System.Drawing.Size(81, 19);
+            this.labelWordBoundaryDelimiter.TabIndex = 21;
+            this.labelWordBoundaryDelimiter.Text = "&Word boundary delimiter:";
+            // 
+            // textBoxWordBoundaryDelimiter
+            // 
+            this.textBoxWordBoundaryDelimiter.Anchor = System.Windows.Forms.AnchorStyles.Left;
+            this.textBoxWordBoundaryDelimiter.Location = new System.Drawing.Point(123, 165);
+            this.textBoxWordBoundaryDelimiter.Name = "textBoxWordBoundaryDelimiter";
+            this.textBoxWordBoundaryDelimiter.Size = new System.Drawing.Size(24, 20);
+            this.textBoxWordBoundaryDelimiter.TabIndex = 22;
+            this.textBoxWordBoundaryDelimiter.Text = "#";
+            this.toolTips.SetToolTip(this.textBoxWordBoundaryDelimiter, resources.GetString("textBoxWordBoundaryDelimiter.ToolTip"));
+            // 
+            // labelAddlPunct
+            // 
+            this.labelAddlPunct.Anchor = System.Windows.Forms.AnchorStyles.Right;
+            this.labelAddlPunct.AutoSize = true;
+            this.labelAddlPunct.Location = new System.Drawing.Point(5, 212);
+            this.labelAddlPunct.Name = "labelAddlPunct";
+            this.labelAddlPunct.Size = new System.Drawing.Size(112, 26);
+            this.labelAddlPunct.TabIndex = 23;
+            this.labelAddlPunct.Text = "Additional &punctuation and whitespace:";
+            this.labelAddlPunct.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
+            // 
+            // textBoxAddlPunctuation
+            // 
+            this.textBoxAddlPunctuation.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
+            this.tableLayoutPanel.SetColumnSpan(this.textBoxAddlPunctuation, 2);
+            this.textBoxAddlPunctuation.Location = new System.Drawing.Point(123, 215);
+            this.textBoxAddlPunctuation.Name = "textBoxAddlPunctuation";
+            this.textBoxAddlPunctuation.Size = new System.Drawing.Size(313, 20);
+            this.textBoxAddlPunctuation.TabIndex = 24;
+            this.toolTips.SetToolTip(this.textBoxAddlPunctuation, "Enter any additional punctuation or whitespace characters needed for this languag" +
+        "e, separated by spaces (these are used for boundary condition checking)");
+            // 
+            // buttonCancel
+            // 
+            this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.buttonCancel.Location = new System.Drawing.Point(227, 253);
+            this.buttonCancel.Name = "buttonCancel";
+            this.buttonCancel.Size = new System.Drawing.Size(75, 23);
+            this.buttonCancel.TabIndex = 25;
+            this.buttonCancel.Text = "&Cancel";
+            this.buttonCancel.UseVisualStyleBackColor = true;
+            // 
+            // buttonOk
+            // 
+            this.buttonOk.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+            this.buttonOk.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.buttonOk.Location = new System.Drawing.Point(146, 253);
+            this.buttonOk.Name = "buttonOk";
+            this.buttonOk.Size = new System.Drawing.Size(75, 23);
+            this.buttonOk.TabIndex = 16;
+            this.buttonOk.Text = "OK";
+            this.buttonOk.UseVisualStyleBackColor = true;
+            this.buttonOk.Click += new System.EventHandler(this.ButtonOk_Click);
+            // 
+            // toolTips
+            // 
+            this.toolTips.AutoPopDelay = 30000;
+            this.toolTips.InitialDelay = 500;
+            this.toolTips.ReshowDelay = 100;
+            // 
+            // AddNewProjectForm
+            // 
+            this.AcceptButton = this.buttonOk;
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.buttonCancel;
+            this.ClientSize = new System.Drawing.Size(463, 315);
+            this.Controls.Add(this.tableLayoutPanel);
+            this.Name = "AddNewProjectForm";
+            this.Text = "Add New Project";
+            this.tableLayoutPanel.ResumeLayout(false);
+            this.tableLayoutPanel.PerformLayout();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
+        private System.Windows.Forms.Label labelName;
+        private System.Windows.Forms.TextBox textBoxName;
+        private System.Windows.Forms.Label labelFont;
+        private System.Windows.Forms.Button buttonChooseFont;
+        private System.Windows.Forms.Label labelFontChosen;
+        private System.Windows.Forms.CheckBox checkBoxRtL;
+        private System.Windows.Forms.Label labelWordBoundaryDelimiter;
+        private System.Windows.Forms.TextBox textBoxWordBoundaryDelimiter;
+        private System.Windows.Forms.Label labelAddlPunct;
+        private System.Windows.Forms.TextBox textBoxAddlPunctuation;
+        private System.Windows.Forms.Button buttonCancel;
+        private System.Windows.Forms.Button buttonOk;
+        private System.Windows.Forms.ToolTip toolTips;
+        private System.Windows.Forms.FontDialog fontDialog;
+    }
+}
\ No newline at end of file
diff --git a/src/SpellingFixerEC/AddNewProjectForm.cs b/src/SpellingFixerEC/AddNewProjectForm.cs
new file mode 100644
index 00000000..51afb257
--- /dev/null
+++ b/src/SpellingFixerEC/AddNewProjectForm.cs
@@ -0,0 +1,203 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace SpellingFixerEC
+{
+    public partial class AddNewProjectForm : Form
+    {
+        public AddNewProjectForm(string addlPunctuation)
+        {
+            InitializeComponent();
+
+            if (!String.IsNullOrEmpty(addlPunctuation))
+            {
+                textBoxAddlPunctuation.Text = DecodePunctuationForCC(addlPunctuation);
+            }
+        }
+
+        public string NewProjectName
+        {
+            get { return textBoxName.Text; }
+            set { textBoxName.Text = value; }
+        }
+
+        public string WordBoundaryDelimiter
+        {
+            get { return textBoxWordBoundaryDelimiter.Text; }
+            set { textBoxWordBoundaryDelimiter.Text = value; }
+        }
+
+        public Font SelectedFont
+        {
+            get { return fontDialog.Font; }
+            set 
+            { 
+                fontDialog.Font = value;
+                labelFontChosen.Text = $"{fontDialog.Font.Name}, with size: {fontDialog.Font.Size}";
+            }
+        }
+
+        public bool IsRightToLeft
+        {
+            get { return checkBoxRtL.Checked; }
+            set { checkBoxRtL.Checked = value; }
+        }
+
+        public bool UserDefinedPunctuation { get; set; }
+
+        public string GetAddlPunctuation(bool encoded)
+        {
+            var addlPunctuation = textBoxAddlPunctuation.Text;
+            if (encoded)
+            {
+                addlPunctuation = EncodePunctuationForCC(addlPunctuation);
+            }
+            return addlPunctuation;
+        }
+
+        private void ButtonChooseFont_Click(object sender, EventArgs e)
+        {
+            if (fontDialog.ShowDialog() == DialogResult.OK)
+            {
+                textBoxWordBoundaryDelimiter.Font = textBoxAddlPunctuation.Font = SelectedFont = fontDialog.Font;                
+            }
+        }
+
+        private void ButtonOk_Click(object sender, EventArgs e)
+        {
+            if (WordBoundaryDelimiter.Contains('"'))
+            {
+                MessageBox.Show("Can't use the double-quote character for the word boundary delimiter", 
+                                SpellingFixerEC.cstrCaption);
+                return;
+            }
+            
+            if (String.IsNullOrEmpty(NewProjectName))
+            {
+                MessageBox.Show("You must define a name for this converter (e.g. 'Hindi fixes')", 
+                                SpellingFixerEC.cstrCaption);
+                return;
+            }
+            
+            if (String.IsNullOrEmpty(labelFontChosen.Text))
+            {
+                if (MessageBox.Show("Did you want to select a font to use when displaying Find-Replace pairs?",
+                                    SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNo)
+                    == DialogResult.Yes)
+                {
+                    return;
+                }
+            }
+        }
+
+        private string EncodePunctuationForCC(string strPunctuation)
+        {
+            string strRet = null;
+
+            if (UserDefinedPunctuation)
+                return strPunctuation;
+
+            else if (!String.IsNullOrEmpty(strPunctuation))
+            {
+                string[] astrChars = strPunctuation.Split(new char[] { ' ' });
+                foreach (string strChar in astrChars)
+                {
+                    if (SpellingFixerEC.GetDefaultPunctuation.IndexOf(strChar) != -1)
+                    {
+                        MessageBox.Show(String.Format("There's no need to add the {0} character as Additional Punctuation because it's there by default,\r\nas are these: {1}",
+                            strChar, DecodePunctuationForCCEx(SpellingFixerEC.GetDefaultPunctuation)), SpellingFixerEC.cstrCaption);
+                        return null;
+                    }
+                    strRet += '\'' + strChar + "\' ";
+                }
+                if (!String.IsNullOrEmpty(strRet))
+                    strRet = strRet.Substring(0, strRet.Length - 1);
+
+                return SpellingFixerEC.GetDefaultPunctuation + ' ' + strRet;
+            }
+
+            return SpellingFixerEC.GetDefaultPunctuation;
+        }
+
+        private string DecodePunctuationForCC(string strPunctuation)
+        {
+            if (String.IsNullOrEmpty(strPunctuation))
+                return null;
+
+            else
+            {
+                // initialize it so that *we* take care of delimiting the punctuation
+                UserDefinedPunctuation = false;
+
+                // the first chunk of this should be the fixed punctuation
+                int nIndex = strPunctuation.IndexOf(SpellingFixerEC.GetDefaultPunctuation);
+                if ((nIndex == 0) && (strPunctuation.Length <= SpellingFixerEC.GetDefaultPunctuation.Length))
+                {
+                    // if this is all there is, then the 'decoded' string is nothing.
+                    return null;
+                }
+                else
+                {
+                    // pre-v3
+                    nIndex = strPunctuation.IndexOf(SpellingFixerEC.cstrDefaultPunctuationAndWhitespace);
+                    if (nIndex == 0)
+                    {
+                        // if this is all there is, then the 'decoded' string is nothing.
+                        int nLength = SpellingFixerEC.cstrDefaultPunctuationAndWhitespace.Length;
+                        if (strPunctuation.Length <= nLength)
+                            return null;
+
+                        // otherwise, process only the extra
+                        strPunctuation = strPunctuation.Substring(nLength);
+                        if (strPunctuation.IndexOf(SpellingFixerEC.cstrV3DefaultPunctuationAndWhitespaceAdds) == 0)
+                        {
+                            nLength = SpellingFixerEC.cstrV3DefaultPunctuationAndWhitespaceAdds.Length;
+                            if (strPunctuation.Length <= nLength)
+                                return null;
+                            strPunctuation = strPunctuation.Substring(nLength + 1);
+                        }
+                        else
+                            strPunctuation = strPunctuation.Substring(1);
+                    }
+                    else
+                    {
+                        UserDefinedPunctuation = true;
+                        return strPunctuation;  // in this case, the user is responsible for delimiting the string him/herself
+                    }
+                }
+            }
+
+            return DecodePunctuationForCCEx(strPunctuation);
+        }
+
+        private string DecodePunctuationForCCEx(string strPunctuation)
+        {
+            string strRet = null;
+            string[] astrDelimitedChars = strPunctuation.Split(new char[] { ' ' });
+
+            // each string should be in the form 'X', where X is the punctuation
+            foreach (string strDelimitedChar in astrDelimitedChars)
+            {
+                if ((strDelimitedChar.IndexOfAny(new char[] { '\'', '\"' }) != -1)
+                    && (strDelimitedChar.Length > 2))
+                    strRet += strDelimitedChar.Substring(1, strDelimitedChar.Length - 2);
+                else
+                    strRet += strDelimitedChar;
+
+                strRet += ' ';
+            }
+
+            if (!String.IsNullOrEmpty(strRet))
+                strRet = strRet.Substring(0, strRet.Length - 1);
+
+            return strRet;
+        }
+    }
+}
diff --git a/src/SpellingFixerEC/AddNewProjectForm.resx b/src/SpellingFixerEC/AddNewProjectForm.resx
new file mode 100644
index 00000000..e26d58e6
--- /dev/null
+++ b/src/SpellingFixerEC/AddNewProjectForm.resx
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <data name="textBoxWordBoundaryDelimiter.ToolTip" xml:space="preserve">
+    <value>Enter the character(s) to use as a word boundary delimiter (e.g. with a delimiter of "#", you can enter the "Find What" text like: #car#, which will only match if the search string is "car", but not "cars" or "sportscar")</value>
+  </data>
+  <metadata name="fontDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>112, 17</value>
+  </metadata>
+</root>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/LoginSF.Designer.cs b/src/SpellingFixerEC/LoginSF.Designer.cs
new file mode 100644
index 00000000..468cc51d
--- /dev/null
+++ b/src/SpellingFixerEC/LoginSF.Designer.cs
@@ -0,0 +1,198 @@
+using System.Windows.Forms;
+
+namespace SpellingFixerEC
+{
+    partial class LoginSF
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+		/// <summary>
+		/// Clean up any resources being used.
+		/// </summary>
+		protected override void Dispose( bool disposing )
+		{
+			if( disposing )
+			{
+				if(components != null)
+				{
+					components.Dispose();
+				}
+			}
+			base.Dispose( disposing );
+		}
+
+		#region Windows Form Designer generated code
+		/// <summary>
+		/// Required method for Designer support - do not modify
+		/// the contents of this method with the code editor.
+		/// </summary>
+		private void InitializeComponent()
+		{
+            this.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LoginSF));
+            this.checkedListBoxProjects = new System.Windows.Forms.CheckedListBox();
+            this.buttonOK = new System.Windows.Forms.Button();
+            this.buttonCancel = new System.Windows.Forms.Button();
+            this.toolTips = new System.Windows.Forms.ToolTip(this.components);
+            this.contextMenu = new System.Windows.Forms.ContextMenu();
+            this.menuItemAddNewProject = new System.Windows.Forms.MenuItem();
+            this.menuItemClick = new System.Windows.Forms.MenuItem();
+            this.menuItemDelete = new System.Windows.Forms.MenuItem();
+            this.menuItemDeleteAll = new System.Windows.Forms.MenuItem();
+            this.menuItemEdit = new System.Windows.Forms.MenuItem();
+            this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
+            this.buttonAddNewProject = new System.Windows.Forms.Button();
+            this.tableLayoutPanel.SuspendLayout();
+            this.SuspendLayout();
+            // 
+            // checkedListBoxProjects
+            // 
+            this.tableLayoutPanel.SetColumnSpan(this.checkedListBoxProjects, 3);
+            this.checkedListBoxProjects.Cursor = System.Windows.Forms.Cursors.Hand;
+            this.checkedListBoxProjects.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.checkedListBoxProjects.Location = new System.Drawing.Point(3, 3);
+            this.checkedListBoxProjects.Name = "checkedListBoxProjects";
+            this.checkedListBoxProjects.Size = new System.Drawing.Size(367, 210);
+            this.checkedListBoxProjects.TabIndex = 0;
+            this.checkedListBoxProjects.ThreeDCheckBoxes = true;
+            this.toolTips.SetToolTip(this.checkedListBoxProjects, "List of existing projects");
+            this.checkedListBoxProjects.SelectedIndexChanged += new System.EventHandler(this.CheckedListBoxProjects_SelectedIndexChanged);
+            this.checkedListBoxProjects.DoubleClick += new System.EventHandler(this.CheckedListBoxProjects_DoubleClick);
+            this.checkedListBoxProjects.MouseUp += new System.Windows.Forms.MouseEventHandler(this.CheckedListBoxProjects_MouseUp);
+            // 
+            // buttonOK
+            // 
+            this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.buttonOK.DialogResult = System.Windows.Forms.DialogResult.OK;
+            this.buttonOK.Location = new System.Drawing.Point(108, 219);
+            this.buttonOK.Name = "buttonOK";
+            this.buttonOK.Size = new System.Drawing.Size(75, 23);
+            this.buttonOK.TabIndex = 11;
+            this.buttonOK.Text = "OK";
+            this.toolTips.SetToolTip(this.buttonOK, "Click to use the checked project");
+            this.buttonOK.Click += new System.EventHandler(this.ButtonOK_Click);
+            // 
+            // buttonCancel
+            // 
+            this.buttonCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+            this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.buttonCancel.Location = new System.Drawing.Point(189, 219);
+            this.buttonCancel.Name = "buttonCancel";
+            this.buttonCancel.Size = new System.Drawing.Size(75, 23);
+            this.buttonCancel.TabIndex = 12;
+            this.buttonCancel.Text = "Cancel";
+            this.toolTips.SetToolTip(this.buttonCancel, "Click to cancel this operation");
+            this.buttonCancel.Click += new System.EventHandler(this.ButtonCancel_Click);
+            // 
+            // toolTips
+            // 
+            this.toolTips.AutoPopDelay = 30000;
+            this.toolTips.InitialDelay = 500;
+            this.toolTips.ReshowDelay = 100;
+            // 
+            // contextMenu
+            // 
+            this.contextMenu.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+            this.menuItemAddNewProject,
+            this.menuItemClick,
+            this.menuItemDelete,
+            this.menuItemDeleteAll,
+            this.menuItemEdit});
+            // 
+            // menuItemAddNewProject
+            // 
+            this.menuItemAddNewProject.Index = 0;
+            this.menuItemAddNewProject.Text = "&Add New Project";
+            this.menuItemAddNewProject.Click += new System.EventHandler(this.MenuItemAddNewProject_Click);
+            // 
+            // menuItemClick
+            // 
+            this.menuItemClick.DefaultItem = true;
+            this.menuItemClick.Index = 1;
+            this.menuItemClick.Text = "&Check Project";
+            this.menuItemClick.Click += new System.EventHandler(this.MenuItemClick_Click);
+            // 
+            // menuItemDelete
+            // 
+            this.menuItemDelete.Index = 2;
+            this.menuItemDelete.Text = "&Delete Project";
+            this.menuItemDelete.Click += new System.EventHandler(this.MenuItemDelete_Click);
+            // 
+            // menuItemDeleteAll
+            // 
+            this.menuItemDeleteAll.Index = 3;
+            this.menuItemDeleteAll.Text = "Delete &All Projects";
+            this.menuItemDeleteAll.Click += new System.EventHandler(this.MenuItemDeleteAll_Click);
+            // 
+            // menuItemEdit
+            // 
+            this.menuItemEdit.Index = 4;
+            this.menuItemEdit.Text = "&Edit Project";
+            this.menuItemEdit.Click += new System.EventHandler(this.MenuItemEdit_Click);
+            // 
+            // tableLayoutPanel
+            // 
+            this.tableLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.tableLayoutPanel.ColumnCount = 3;
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
+            this.tableLayoutPanel.Controls.Add(this.checkedListBoxProjects, 0, 0);
+            this.tableLayoutPanel.Controls.Add(this.buttonCancel, 1, 1);
+            this.tableLayoutPanel.Controls.Add(this.buttonOK, 0, 1);
+            this.tableLayoutPanel.Controls.Add(this.buttonAddNewProject, 2, 1);
+            this.tableLayoutPanel.Location = new System.Drawing.Point(12, 12);
+            this.tableLayoutPanel.Name = "tableLayoutPanel";
+            this.tableLayoutPanel.RowCount = 2;
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+            this.tableLayoutPanel.Size = new System.Drawing.Size(373, 245);
+            this.tableLayoutPanel.TabIndex = 14;
+            // 
+            // buttonAddNewProject
+            // 
+            this.buttonAddNewProject.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+            this.buttonAddNewProject.Location = new System.Drawing.Point(295, 219);
+            this.buttonAddNewProject.Name = "buttonAddNewProject";
+            this.buttonAddNewProject.Size = new System.Drawing.Size(75, 23);
+            this.buttonAddNewProject.TabIndex = 13;
+            this.buttonAddNewProject.Text = "&Add New Project";
+            this.buttonAddNewProject.UseVisualStyleBackColor = true;
+            this.buttonAddNewProject.Click += new System.EventHandler(this.MenuItemAddNewProject_Click);
+            // 
+            // LoginSF
+            // 
+            this.AcceptButton = this.buttonOK;
+            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+            this.CancelButton = this.buttonCancel;
+            this.ClientSize = new System.Drawing.Size(397, 269);
+            this.Controls.Add(this.tableLayoutPanel);
+            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+            this.Name = "LoginSF";
+            this.Text = "Select Find-Replace Project";
+            this.Shown += new System.EventHandler(this.LoginSF_Shown);
+            this.tableLayoutPanel.ResumeLayout(false);
+            this.ResumeLayout(false);
+
+        }
+		#endregion
+
+        private CheckedListBox checkedListBoxProjects;
+        private Button buttonOK;
+        private Button buttonCancel;
+        private ToolTip toolTips;
+        private MenuItem menuItemDelete;
+        private MenuItem menuItemClick;
+        private ContextMenu contextMenu;
+        private MenuItem menuItemEdit;
+        private MenuItem menuItemDeleteAll;
+        private TableLayoutPanel tableLayoutPanel;
+        private MenuItem menuItemAddNewProject;
+        private Button buttonAddNewProject;
+    }
+}
\ No newline at end of file
diff --git a/src/SpellingFixerEC/LoginSF.cs b/src/SpellingFixerEC/LoginSF.cs
index aec4ba34..cf8aac12 100644
--- a/src/SpellingFixerEC/LoginSF.cs
+++ b/src/SpellingFixerEC/LoginSF.cs
@@ -20,31 +20,9 @@ namespace SpellingFixerEC
 	/// Summary description for LoginSF.
 	/// </summary>
     [ComVisible(false)]
-    internal class LoginSF : System.Windows.Forms.Form
+    internal partial class LoginSF : System.Windows.Forms.Form
 	{
-        private System.Windows.Forms.CheckedListBox checkedListBoxProjects;
-        private System.Windows.Forms.Button buttonOK;
-        private System.Windows.Forms.Button buttonCancel;
-        private System.Windows.Forms.TextBox textBoxNewProjectName;
-        private System.Windows.Forms.Button buttonAddNewProject;
-        private System.Windows.Forms.CheckBox checkBoxUnicode;
-        private System.Windows.Forms.Label labelFont;
-        private System.Windows.Forms.ListBox listBoxFontSize;
-        private System.Windows.Forms.GroupBox groupBoxNewProject;
-        private System.Windows.Forms.Label labelName;
-        private System.Windows.Forms.ComboBox comboBoxFont;
-        private System.Windows.Forms.Label labelFontSize;
-        private System.Windows.Forms.ToolTip toolTips;
-        private System.Windows.Forms.MenuItem menuItemDelete;
-        private System.Windows.Forms.MenuItem menuItemClick;
-        private System.Windows.Forms.ContextMenu contextMenu;
-        private System.Windows.Forms.Label labelCP;
-        private System.Windows.Forms.TextBox textBoxCP;
-        private System.ComponentModel.IContainer components;
-
-        private bool    m_bLegacy;
         private bool    m_isRightToleft;
-        private int     m_cp = 1252;
         private Font    m_font;
         private string  m_strConverterSpec;
         private string  m_strEncConverterName;
@@ -53,18 +31,11 @@ internal class LoginSF : System.Windows.Forms.Form
         public  const string    cstrAddNewProjectButtonToolTipText = "Click to add new project";
         public  const string    cstrNewProjectGroupText = "New Project";
         private const string    cstrProjectMemoryKey = @"SOFTWARE\SIL\SilEncConverters40\SpellingFixerEC";
-        private System.Windows.Forms.Label labelInstructions;
-        private System.Windows.Forms.Label label1;
-        private System.Windows.Forms.TextBox textBoxWordBoundaryDelimiter;
-        private System.Windows.Forms.MenuItem menuItemEdit;
-        private System.Windows.Forms.MenuItem menuItemDeleteAll;
-        private System.Windows.Forms.Label label2;
-        private System.Windows.Forms.TextBox textBoxAddlPunctuation;
         private string  m_strNonWordCharacters;
-        private CheckBox checkBoxRtL;
-        private string  cstrProjectMostRecentProject = "MostRecentProject";
+        private const string  cstrProjectMostRecentProject = "MostRecentProject";
 
-		public LoginSF()
+
+        public LoginSF()
 		{
 			//
 			// Required for Windows Form Designer support
@@ -73,11 +44,8 @@ public LoginSF()
 
             this.checkedListBoxProjects.ContextMenu = this.contextMenu;
 
-            EncConverters aECs = new EncConverters();
-            EncConverters myECs = aECs.FilterByProcessType(SpellingFixerEC.SFProcessType);
-            
-            // disable the list box (and the OK button) if there's nothing in it
-            this.buttonOK.Enabled = this.checkedListBoxProjects.Visible = (myECs.Count > 0);
+            var aECs = new EncConverters();
+            var myECs = aECs.FilterByProcessType(SpellingFixerEC.SFProcessType);
             
             string strPartialName;
             foreach(IEncConverter aEC in myECs.Values)
@@ -93,49 +61,20 @@ public LoginSF()
             }
             catch {}
 
-            // TODO: also, add a new ctor to allow choosing the project programmatically.
-            if( nIndex != -1 )
-                checkedListBoxProjects.SetItemChecked(nIndex,true);
-            else
-                // if there are no items in the list, then make the "Add New Project" the default button
-                this.AcceptButton = this.buttonAddNewProject;
-
-            // populate the font name combo box with all the fonts installed (but only if they 
-            //  do Regular style). That is, on my system, I choose the "Aharoni" (some sort of 
-            //  hebrew font) as a test and the creation of the "Font" object below failed, 
-            //  because I was using the ctor that takes only the name and size, but that font 
-            //  doesn't have a 'Regular' style (which is the default for that ctor). If I 
-            //  wanted to add a query for the font 'style' to this dialog box as well (c.f. 
-            //  Word's font dialog box), then this restriction could be removed, but... I'll 
-            //  wait until someone complains.
-            InstalledFontCollection installedFontCollection = new InstalledFontCollection();
-            FontFamily[] fontFamilies = installedFontCollection.Families;
-            foreach(FontFamily fontFamily in fontFamilies)
-                if( fontFamily.IsStyleAvailable(FontStyle.Regular) )
-                    comboBoxFont.Items.Add(fontFamily.Name);
-    
-            // start with some defaults.
-            this.listBoxFontSize.SelectedItem = "14";
-            this.textBoxCP.Text = "1252";
-            this.textBoxWordBoundaryDelimiter.Text = SpellingFixerEC.cstrDefaultWordBoundaryDelimiter;
-            
-            // start out pessimmistic
-            DialogResult = DialogResult.Cancel;
-        }
-
-        public Font FontToUse
-        {
-            get { return m_font; }
+            if (nIndex != -1)
+            {
+                checkedListBoxProjects.SetItemChecked(nIndex, true);
+            }
         }
 
-        public int CpToUse
+        public bool ProjectsExist
         {
-            get { return m_cp; }
+            get { return checkedListBoxProjects.Items.Count > 0; }
         }
 
-        public bool IsLegacy
+        public Font FontToUse
         {
-            get { return m_bLegacy; }
+            get { return m_font; }
         }
 
         public string ConverterSpec
@@ -163,354 +102,6 @@ public string Punctuation
             get { return m_strNonWordCharacters; }
         }
 
-		/// <summary>
-		/// Clean up any resources being used.
-		/// </summary>
-		protected override void Dispose( bool disposing )
-		{
-			if( disposing )
-			{
-				if(components != null)
-				{
-					components.Dispose();
-				}
-			}
-			base.Dispose( disposing );
-		}
-
-		#region Windows Form Designer generated code
-		/// <summary>
-		/// Required method for Designer support - do not modify
-		/// the contents of this method with the code editor.
-		/// </summary>
-		private void InitializeComponent()
-		{
-            this.components = new System.ComponentModel.Container();
-            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LoginSF));
-            this.checkedListBoxProjects = new System.Windows.Forms.CheckedListBox();
-            this.buttonOK = new System.Windows.Forms.Button();
-            this.buttonCancel = new System.Windows.Forms.Button();
-            this.labelName = new System.Windows.Forms.Label();
-            this.textBoxNewProjectName = new System.Windows.Forms.TextBox();
-            this.checkBoxUnicode = new System.Windows.Forms.CheckBox();
-            this.buttonAddNewProject = new System.Windows.Forms.Button();
-            this.groupBoxNewProject = new System.Windows.Forms.GroupBox();
-            this.textBoxAddlPunctuation = new System.Windows.Forms.TextBox();
-            this.label2 = new System.Windows.Forms.Label();
-            this.textBoxWordBoundaryDelimiter = new System.Windows.Forms.TextBox();
-            this.label1 = new System.Windows.Forms.Label();
-            this.labelFont = new System.Windows.Forms.Label();
-            this.comboBoxFont = new System.Windows.Forms.ComboBox();
-            this.labelFontSize = new System.Windows.Forms.Label();
-            this.labelCP = new System.Windows.Forms.Label();
-            this.textBoxCP = new System.Windows.Forms.TextBox();
-            this.listBoxFontSize = new System.Windows.Forms.ListBox();
-            this.toolTips = new System.Windows.Forms.ToolTip(this.components);
-            this.contextMenu = new System.Windows.Forms.ContextMenu();
-            this.menuItemClick = new System.Windows.Forms.MenuItem();
-            this.menuItemDelete = new System.Windows.Forms.MenuItem();
-            this.menuItemDeleteAll = new System.Windows.Forms.MenuItem();
-            this.menuItemEdit = new System.Windows.Forms.MenuItem();
-            this.labelInstructions = new System.Windows.Forms.Label();
-            this.checkBoxRtL = new System.Windows.Forms.CheckBox();
-            this.groupBoxNewProject.SuspendLayout();
-            this.SuspendLayout();
-            // 
-            // checkedListBoxProjects
-            // 
-            this.checkedListBoxProjects.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.checkedListBoxProjects.Location = new System.Drawing.Point(32, 30);
-            this.checkedListBoxProjects.Name = "checkedListBoxProjects";
-            this.checkedListBoxProjects.Size = new System.Drawing.Size(720, 256);
-            this.checkedListBoxProjects.TabIndex = 0;
-            this.checkedListBoxProjects.ThreeDCheckBoxes = true;
-            this.toolTips.SetToolTip(this.checkedListBoxProjects, "List of existing projects");
-            this.checkedListBoxProjects.SelectedIndexChanged += new System.EventHandler(this.checkedListBoxProjects_SelectedIndexChanged);
-            this.checkedListBoxProjects.DoubleClick += new System.EventHandler(this.checkedListBoxProjects_DoubleClick);
-            this.checkedListBoxProjects.MouseUp += new System.Windows.Forms.MouseEventHandler(this.checkedListBoxProjects_MouseUp);
-            // 
-            // buttonOK
-            // 
-            this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.buttonOK.Location = new System.Drawing.Point(230, 913);
-            this.buttonOK.Name = "buttonOK";
-            this.buttonOK.Size = new System.Drawing.Size(150, 44);
-            this.buttonOK.TabIndex = 11;
-            this.buttonOK.Text = "OK";
-            this.toolTips.SetToolTip(this.buttonOK, "Click to use the checked project");
-            this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click);
-            // 
-            // buttonCancel
-            // 
-            this.buttonCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
-            this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.buttonCancel.Location = new System.Drawing.Point(406, 913);
-            this.buttonCancel.Name = "buttonCancel";
-            this.buttonCancel.Size = new System.Drawing.Size(150, 44);
-            this.buttonCancel.TabIndex = 12;
-            this.buttonCancel.Text = "Cancel";
-            this.toolTips.SetToolTip(this.buttonCancel, "Click to cancel this operation");
-            this.buttonCancel.Click += new System.EventHandler(this.buttonCancel_Click);
-            // 
-            // labelName
-            // 
-            this.labelName.Location = new System.Drawing.Point(64, 399);
-            this.labelName.Name = "labelName";
-            this.labelName.Size = new System.Drawing.Size(112, 42);
-            this.labelName.TabIndex = 1;
-            this.labelName.Text = "&Name:";
-            // 
-            // textBoxNewProjectName
-            // 
-            this.textBoxNewProjectName.Location = new System.Drawing.Point(176, 399);
-            this.textBoxNewProjectName.Name = "textBoxNewProjectName";
-            this.textBoxNewProjectName.Size = new System.Drawing.Size(544, 31);
-            this.textBoxNewProjectName.TabIndex = 2;
-            this.toolTips.SetToolTip(this.textBoxNewProjectName, "Enter the name of a new projects (e.g. \'Hindi\')");
-            this.textBoxNewProjectName.TextChanged += new System.EventHandler(this.textBoxNewProjectName_TextChanged);
-            // 
-            // checkBoxUnicode
-            // 
-            this.checkBoxUnicode.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
-            this.checkBoxUnicode.Checked = true;
-            this.checkBoxUnicode.CheckState = System.Windows.Forms.CheckState.Checked;
-            this.checkBoxUnicode.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.checkBoxUnicode.Location = new System.Drawing.Point(32, 222);
-            this.checkBoxUnicode.Name = "checkBoxUnicode";
-            this.checkBoxUnicode.Size = new System.Drawing.Size(144, 44);
-            this.checkBoxUnicode.TabIndex = 7;
-            this.checkBoxUnicode.Text = "&Unicode:";
-            this.toolTips.SetToolTip(this.checkBoxUnicode, "Check this if the data is Unicode-encoded (otherwise, it is Legacy-encoded)");
-            this.checkBoxUnicode.CheckedChanged += new System.EventHandler(this.checkBoxUnicode_CheckedChanged);
-            // 
-            // buttonAddNewProject
-            // 
-            this.buttonAddNewProject.Location = new System.Drawing.Point(232, 468);
-            this.buttonAddNewProject.Name = "buttonAddNewProject";
-            this.buttonAddNewProject.Size = new System.Drawing.Size(256, 42);
-            this.buttonAddNewProject.TabIndex = 10;
-            this.buttonAddNewProject.Text = "&Add New Project";
-            this.toolTips.SetToolTip(this.buttonAddNewProject, "Click to add new project");
-            this.buttonAddNewProject.Click += new System.EventHandler(this.buttonAddNewProject_Click);
-            // 
-            // groupBoxNewProject
-            // 
-            this.groupBoxNewProject.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.groupBoxNewProject.Controls.Add(this.checkBoxRtL);
-            this.groupBoxNewProject.Controls.Add(this.textBoxAddlPunctuation);
-            this.groupBoxNewProject.Controls.Add(this.label2);
-            this.groupBoxNewProject.Controls.Add(this.textBoxWordBoundaryDelimiter);
-            this.groupBoxNewProject.Controls.Add(this.label1);
-            this.groupBoxNewProject.Controls.Add(this.labelFont);
-            this.groupBoxNewProject.Controls.Add(this.comboBoxFont);
-            this.groupBoxNewProject.Controls.Add(this.labelFontSize);
-            this.groupBoxNewProject.Controls.Add(this.checkBoxUnicode);
-            this.groupBoxNewProject.Controls.Add(this.labelCP);
-            this.groupBoxNewProject.Controls.Add(this.textBoxCP);
-            this.groupBoxNewProject.Controls.Add(this.listBoxFontSize);
-            this.groupBoxNewProject.Controls.Add(this.buttonAddNewProject);
-            this.groupBoxNewProject.Location = new System.Drawing.Point(32, 340);
-            this.groupBoxNewProject.Name = "groupBoxNewProject";
-            this.groupBoxNewProject.Size = new System.Drawing.Size(720, 549);
-            this.groupBoxNewProject.TabIndex = 9;
-            this.groupBoxNewProject.TabStop = false;
-            this.groupBoxNewProject.Text = "New Project";
-            // 
-            // textBoxAddlPunctuation
-            // 
-            this.textBoxAddlPunctuation.Location = new System.Drawing.Point(464, 394);
-            this.textBoxAddlPunctuation.Name = "textBoxAddlPunctuation";
-            this.textBoxAddlPunctuation.Size = new System.Drawing.Size(224, 31);
-            this.textBoxAddlPunctuation.TabIndex = 14;
-            this.toolTips.SetToolTip(this.textBoxAddlPunctuation, "Enter any additional punctuation or whitespace characters needed for this languag" +
-        "e, separated by spaces");
-            // 
-            // label2
-            // 
-            this.label2.Location = new System.Drawing.Point(32, 394);
-            this.label2.Name = "label2";
-            this.label2.Size = new System.Drawing.Size(416, 44);
-            this.label2.TabIndex = 13;
-            this.label2.Text = "Additional &punctuation and whitespace:";
-            // 
-            // textBoxWordBoundaryDelimiter
-            // 
-            this.textBoxWordBoundaryDelimiter.Location = new System.Drawing.Point(464, 335);
-            this.textBoxWordBoundaryDelimiter.Name = "textBoxWordBoundaryDelimiter";
-            this.textBoxWordBoundaryDelimiter.Size = new System.Drawing.Size(48, 31);
-            this.textBoxWordBoundaryDelimiter.TabIndex = 12;
-            this.textBoxWordBoundaryDelimiter.Text = "#";
-            this.toolTips.SetToolTip(this.textBoxWordBoundaryDelimiter, resources.GetString("textBoxWordBoundaryDelimiter.ToolTip"));
-            this.textBoxWordBoundaryDelimiter.TextChanged += new System.EventHandler(this.textBoxWordBoundaryDelimiter_TextChanged);
-            // 
-            // label1
-            // 
-            this.label1.Location = new System.Drawing.Point(32, 338);
-            this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(272, 30);
-            this.label1.TabIndex = 11;
-            this.label1.Text = "&Word boundary delimiter:";
-            // 
-            // labelFont
-            // 
-            this.labelFont.Location = new System.Drawing.Point(32, 118);
-            this.labelFont.Name = "labelFont";
-            this.labelFont.Size = new System.Drawing.Size(200, 43);
-            this.labelFont.TabIndex = 3;
-            this.labelFont.Text = "&Font:";
-            // 
-            // comboBoxFont
-            // 
-            this.comboBoxFont.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
-            this.comboBoxFont.Location = new System.Drawing.Point(48, 162);
-            this.comboBoxFont.Name = "comboBoxFont";
-            this.comboBoxFont.Size = new System.Drawing.Size(464, 33);
-            this.comboBoxFont.TabIndex = 4;
-            this.toolTips.SetToolTip(this.comboBoxFont, "Choose the font to be used for displaying the words whose spelling is to be corre" +
-        "cted (e.g. \'Arial Unicode MS\')");
-            this.comboBoxFont.SelectedIndexChanged += new System.EventHandler(this.comboBoxFont_SelectedIndexChanged);
-            // 
-            // labelFontSize
-            // 
-            this.labelFontSize.Location = new System.Drawing.Point(528, 118);
-            this.labelFontSize.Name = "labelFontSize";
-            this.labelFontSize.Size = new System.Drawing.Size(128, 43);
-            this.labelFontSize.TabIndex = 5;
-            this.labelFontSize.Text = "Font &Size:";
-            // 
-            // labelCP
-            // 
-            this.labelCP.Location = new System.Drawing.Point(240, 222);
-            this.labelCP.Name = "labelCP";
-            this.labelCP.Size = new System.Drawing.Size(160, 42);
-            this.labelCP.TabIndex = 8;
-            this.labelCP.Text = "&Code page:";
-            this.labelCP.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            this.labelCP.Visible = false;
-            // 
-            // textBoxCP
-            // 
-            this.textBoxCP.Location = new System.Drawing.Point(400, 222);
-            this.textBoxCP.Name = "textBoxCP";
-            this.textBoxCP.Size = new System.Drawing.Size(112, 31);
-            this.textBoxCP.TabIndex = 9;
-            this.toolTips.SetToolTip(this.textBoxCP, "Enter the code page used by this legacy font");
-            this.textBoxCP.Visible = false;
-            this.textBoxCP.TextChanged += new System.EventHandler(this.textBoxCP_TextChanged);
-            // 
-            // listBoxFontSize
-            // 
-            this.listBoxFontSize.ItemHeight = 25;
-            this.listBoxFontSize.Items.AddRange(new object[] {
-            "8",
-            "9",
-            "10",
-            "10.5",
-            "11",
-            "12",
-            "14",
-            "16",
-            "18",
-            "20",
-            "22",
-            "24",
-            "26",
-            "28",
-            "36",
-            "48",
-            "72"});
-            this.listBoxFontSize.Location = new System.Drawing.Point(544, 162);
-            this.listBoxFontSize.Name = "listBoxFontSize";
-            this.listBoxFontSize.ScrollAlwaysVisible = true;
-            this.listBoxFontSize.Size = new System.Drawing.Size(144, 129);
-            this.listBoxFontSize.TabIndex = 6;
-            this.toolTips.SetToolTip(this.listBoxFontSize, "Choose the font size");
-            this.listBoxFontSize.SelectedIndexChanged += new System.EventHandler(this.listBoxFontSize_SelectedIndexChanged);
-            // 
-            // toolTips
-            // 
-            this.toolTips.AutoPopDelay = 30000;
-            this.toolTips.InitialDelay = 500;
-            this.toolTips.ReshowDelay = 100;
-            // 
-            // contextMenu
-            // 
-            this.contextMenu.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
-            this.menuItemClick,
-            this.menuItemDelete,
-            this.menuItemDeleteAll,
-            this.menuItemEdit});
-            // 
-            // menuItemClick
-            // 
-            this.menuItemClick.DefaultItem = true;
-            this.menuItemClick.Index = 0;
-            this.menuItemClick.Text = "&Click";
-            this.menuItemClick.Click += new System.EventHandler(this.menuItemClick_Click);
-            // 
-            // menuItemDelete
-            // 
-            this.menuItemDelete.Index = 1;
-            this.menuItemDelete.Text = "&Delete";
-            this.menuItemDelete.Click += new System.EventHandler(this.menuItemDelete_Click);
-            // 
-            // menuItemDeleteAll
-            // 
-            this.menuItemDeleteAll.Index = 2;
-            this.menuItemDeleteAll.Text = "Delete &All";
-            this.menuItemDeleteAll.Click += new System.EventHandler(this.menuItemDeleteAll_Click);
-            // 
-            // menuItemEdit
-            // 
-            this.menuItemEdit.Index = 3;
-            this.menuItemEdit.Text = "&Edit";
-            this.menuItemEdit.Click += new System.EventHandler(this.menuItemEdit_Click);
-            // 
-            // labelInstructions
-            // 
-            this.labelInstructions.Location = new System.Drawing.Point(64, 118);
-            this.labelInstructions.Name = "labelInstructions";
-            this.labelInstructions.Size = new System.Drawing.Size(672, 118);
-            this.labelInstructions.TabIndex = 13;
-            this.labelInstructions.Text = "Fill in the details below and click the Add New Project button.";
-            // 
-            // checkBoxRtL
-            // 
-            this.checkBoxRtL.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
-            this.checkBoxRtL.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.checkBoxRtL.Location = new System.Drawing.Point(37, 272);
-            this.checkBoxRtL.Name = "checkBoxRtL";
-            this.checkBoxRtL.Size = new System.Drawing.Size(195, 44);
-            this.checkBoxRtL.TabIndex = 15;
-            this.checkBoxRtL.Text = "&Right-to-Left";
-            this.toolTips.SetToolTip(this.checkBoxRtL, "Check this if the data is right-to-left");
-            // 
-            // LoginSF
-            // 
-            this.AcceptButton = this.buttonOK;
-            this.AutoScaleBaseSize = new System.Drawing.Size(10, 24);
-            this.CancelButton = this.buttonCancel;
-            this.ClientSize = new System.Drawing.Size(788, 981);
-            this.Controls.Add(this.checkedListBoxProjects);
-            this.Controls.Add(this.labelName);
-            this.Controls.Add(this.textBoxNewProjectName);
-            this.Controls.Add(this.groupBoxNewProject);
-            this.Controls.Add(this.buttonOK);
-            this.Controls.Add(this.buttonCancel);
-            this.Controls.Add(this.labelInstructions);
-            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
-            this.Name = "LoginSF";
-            this.Text = "Choose or Add New Fix Spelling Project";
-            this.groupBoxNewProject.ResumeLayout(false);
-            this.groupBoxNewProject.PerformLayout();
-            this.ResumeLayout(false);
-            this.PerformLayout();
-
-        }
-		#endregion
-
         internal string FullName(string strProjName)
         {
             return SpellingFixerEC.cstrSFConverterPrefix + strProjName;
@@ -525,26 +116,29 @@ internal string PartialName(string strFullName)
             return null;
         }
 
-        internal static void CreateCCTable(string strCCTableSpec, string strEncConverterName, string strPunctuation, string strCustomCode, bool bUnicode)
+        internal static void CreateCCTable(string strCCTableSpec, string strEncConverterName, string strPunctuation)
         {
-            CreateCCTable(new FileStream(strCCTableSpec, FileMode.Create), strEncConverterName, strPunctuation, strCustomCode, bUnicode);
+            CreateCCTable(new FileStream(strCCTableSpec, FileMode.Create), strEncConverterName, strPunctuation);
         }
 
-        internal static void CreateCCTable(FileStream fs, string strEncConverterName, string strPunctuation, string strCustomCode, bool bUnicode)
+        internal static void CreateCCTable(FileStream fs, string strEncConverterName, string strPunctuation)
         {
             // write out the header lines.
-            StreamWriter sw = new StreamWriter(fs);
-            CreateCCTable(sw, strEncConverterName, strPunctuation, strCustomCode, bUnicode);
+            var sw = new StreamWriter(fs);
+            CreateCCTable(sw, strEncConverterName, strPunctuation);
             sw.Flush();
             sw.Close();
         }
 
-        internal static string cstrLastHeaderLine
+        internal static string CctableLastHeaderLine
         {
             get { return "c Last Header Line: DON'T modify the table beyond this point (or your changes may be overwritten)"; }
         }
 
-        internal static void CreateCCTable(StreamWriter sw, string strEncConverterName, string strPunctuation, string strCustomCode, bool bUnicode)
+        internal const string DummyRule = $"    d31 > d31 c dummy rule so that the table isn't empty (can be removed if you have rules below the Last Header Line below)";
+        internal const string CustomRuleEndComment = "c +----------end custom changes----------+";
+
+        internal static void CreateCCTable(StreamWriter sw, string strEncConverterName, string strPunctuation, string strCustomCode = DummyRule, bool bUnicode = true)
         {
             // write out the header lines.
             string strVersion = Assembly.GetExecutingAssembly().GetName().Version.ToString();
@@ -561,14 +155,14 @@ internal static void CreateCCTable(StreamWriter sw, string strEncConverterName,
             sw.WriteLine("c +----------start custom changes----------+");
             if (!String.IsNullOrEmpty(strCustomCode))
             {
-                sw.Write(strCustomCode);
+                sw.WriteLine(strCustomCode);
             }
-            sw.WriteLine("c +----------end custom changes----------+");
+            sw.WriteLine(CustomRuleEndComment);
             sw.WriteLine("");
-            sw.WriteLine(cstrLastHeaderLine);
+            sw.WriteLine(CctableLastHeaderLine);
         }
 
-        internal static void ReWriteCCTableHeader(string strCCTableSpec, string strPunctuation, Encoding enc)
+        internal static void ReWriteCCTableHeader(string strCCTableSpec, string strPunctuation, Encoding enc, bool removeDummyRule)
         {
             // Open the CC table that has the mappings put them in a new file
             //  while re-writing the first part of the header
@@ -576,24 +170,39 @@ internal static void ReWriteCCTableHeader(string strCCTableSpec, string strPunct
             {
                 const string strTempExt = ".new";
                 // get a stream writer for these encoding and append
-                StreamReader sr = new StreamReader(strCCTableSpec,enc);
-                StreamWriter sw = new StreamWriter(strCCTableSpec + strTempExt, false, enc);
+                var sr = new StreamReader(strCCTableSpec,enc);
+                var sw = new StreamWriter(strCCTableSpec + strTempExt, false, enc);
 
                 // this is for version 1.2.0.0
                 string strVersion = Assembly.GetExecutingAssembly().GetName().Version.ToString();
+                var copiedDummyRule = false;
 
                 // copy the read stuff to the output and update the 'ws' store line
                 for(string line = sr.ReadLine(); line != null; line = sr.ReadLine())
                 {
-                    if( line.IndexOf("c This cc table was created by SpellingFixerEC.dll v") != -1 )
+                    if (line.Contains("c This cc table was created by SpellingFixerEC.dll v"))
                         line = String.Format("c This cc table was created by SpellingFixerEC.dll v{0} on {1}.",strVersion, DateTime.Now.ToShortDateString());
-                    else if( line.IndexOf("store(ws)") != -1 )
+                    else if (line.Contains("store(ws)"))
                         line = String.Format("    store(ws) {0} endstore", strPunctuation);
 
+                    // if we're re-writing the cc table with this method, then if we're going to be adding 
+                    //  actual rules (i.e. removeDummyRule is true), then we can get rid of the dummy rule.
+                    if (line.Contains(DummyRule))
+                    {
+                        if (removeDummyRule)
+                            continue;
+                        copiedDummyRule = true;
+                    }
+                    // otherwise, we need to put it back in
+                    else if (line.Contains(CustomRuleEndComment) && !removeDummyRule && !copiedDummyRule)
+                    {
+                        sw.WriteLine(DummyRule);
+                    }
+
                     sw.WriteLine(line);
                     
                     // stop when we get past the end of the header
-                    if( line == cstrLastHeaderLine )
+                    if( line == CctableLastHeaderLine )
                         break;
                 }
 
@@ -609,121 +218,6 @@ internal static void ReWriteCCTableHeader(string strCCTableSpec, string strPunct
             }
         }
 
-        private void EnableAddNewProjectButton()
-        {
-            this.buttonAddNewProject.Enabled = ( 
-                (this.textBoxNewProjectName.Text != "")
-                &&  ((this.comboBoxFont.SelectedItem != null) && (this.comboBoxFont.SelectedItem.ToString() != ""))
-                &&  ((this.listBoxFontSize.SelectedItem != null) && (this.listBoxFontSize.SelectedItem.ToString() != "")) 
-                &&  ((this.checkBoxUnicode.Checked) || (this.textBoxCP.Text != "")) 
-                &&  (!String.IsNullOrEmpty(this.textBoxWordBoundaryDelimiter.Text)) );
-        }
-
-        private bool    m_bUserDefinePunctuation = false;
-
-        private string DecodePunctuationForCC(string strPunctuation)
-        {
-            if( String.IsNullOrEmpty(strPunctuation) )
-                return null;
-
-            else 
-            {
-                // initialize it so that *we* take care of delimiting the punctuation
-                m_bUserDefinePunctuation = false;
-
-                // the first chunk of this should be the fixed punctuation
-                int nIndex = strPunctuation.IndexOf(SpellingFixerEC.GetDefaultPunctuation);
-                if ((nIndex == 0) && (strPunctuation.Length <= SpellingFixerEC.GetDefaultPunctuation.Length))
-                {
-                    // if this is all there is, then the 'decoded' string is nothing.
-                    return null;
-                }
-                else
-                {
-                    // pre-v3
-                    nIndex = strPunctuation.IndexOf(SpellingFixerEC.cstrDefaultPunctuationAndWhitespace);
-                if( nIndex == 0 )
-                {
-                    // if this is all there is, then the 'decoded' string is nothing.
-                        int nLength = SpellingFixerEC.cstrDefaultPunctuationAndWhitespace.Length;
-                        if (strPunctuation.Length <= nLength)
-                        return null;
-
-                    // otherwise, process only the extra
-                        strPunctuation = strPunctuation.Substring(nLength);
-                        if (strPunctuation.IndexOf(SpellingFixerEC.cstrV3DefaultPunctuationAndWhitespaceAdds) == 0)
-                        {
-                            nLength = SpellingFixerEC.cstrV3DefaultPunctuationAndWhitespaceAdds.Length;
-                            if (strPunctuation.Length <= nLength)
-                                return null;
-                            strPunctuation = strPunctuation.Substring(nLength + 1);
-                        }
-                        else
-                            strPunctuation = strPunctuation.Substring(1);
-                }
-                else
-                {
-                    m_bUserDefinePunctuation = true;
-                    return strPunctuation;  // in this case, the user is responsible for delimiting the string him/herself
-                }
-            }
-            }
-
-            return DecodePunctuationForCCEx(strPunctuation);
-        }
-
-        private string DecodePunctuationForCCEx(string strPunctuation)
-        {
-            string strRet = null;
-            string [] astrDelimitedChars = strPunctuation.Split(new char [] {' '});
-            
-            // each string should be in the form 'X', where X is the punctuation
-            foreach(string strDelimitedChar in astrDelimitedChars)
-            {
-                if(     (strDelimitedChar.IndexOfAny(new char [] {'\'', '\"' }) != -1)
-                    &&  (strDelimitedChar.Length > 2) )
-                    strRet += strDelimitedChar.Substring(1,strDelimitedChar.Length - 2);
-                else
-                    strRet += strDelimitedChar;
-
-                strRet += ' ';
-            }
-
-            if( !String.IsNullOrEmpty(strRet) )
-                strRet = strRet.Substring(0,strRet.Length - 1);
-
-            return strRet;
-        }
-
-        private string EncodePunctuationForCC(string strPunctuation)
-        {
-            string strRet = null;
-
-            if( m_bUserDefinePunctuation )
-                return strPunctuation;
-
-            else if( !String.IsNullOrEmpty(strPunctuation) )
-            {
-                string [] astrChars = strPunctuation.Split(new char [] {' '});
-                foreach(string strChar in astrChars)
-                {
-                    if (SpellingFixerEC.GetDefaultPunctuation.IndexOf(strChar) != -1)
-                    {
-                        MessageBox.Show(String.Format("There's no need to add the {0} character as Additional Punctuation because it's there by default,\r\nas are these: {1}",
-                            strChar, DecodePunctuationForCCEx(SpellingFixerEC.GetDefaultPunctuation)), SpellingFixerEC.cstrCaption);
-                        return null;
-                    }
-                    strRet += '\'' + strChar + "\' ";
-                }
-                if( !String.IsNullOrEmpty(strRet) )
-                    strRet = strRet.Substring(0,strRet.Length - 1);
-
-                return SpellingFixerEC.GetDefaultPunctuation + ' ' + strRet;
-            }
-
-            return SpellingFixerEC.GetDefaultPunctuation;
-        }
-
         internal static string GetMapTableFolderPath
         {
             get
@@ -738,57 +232,63 @@ internal static string GetMapTableFolderPath
             }
         }
 
-        private void buttonAddNewProject_Click(object sender, System.EventArgs e)
+        private void MenuItemAddNewProject_Click(object sender, EventArgs e)
         {
-            // in case the Add New project button was default, change it to the OK button.
-            this.AcceptButton = this.buttonOK;
-
-            // get the delimiter for word boundaries and disallow the /"/ character
-            m_strWordBoundaryDelimiter = this.textBoxWordBoundaryDelimiter.Text;
-            m_isRightToleft = checkBoxRtL.Checked;
+            AddNewProject();
+        }
 
-            if ( m_strWordBoundaryDelimiter.IndexOf('"') != -1 )
+        private void AddNewProject()
+        {
+            var dlg = new AddNewProjectForm(SpellingFixerEC.GetDefaultPunctuation)
             {
-                MessageBox.Show("Can't use the double-quote character for the word boundary delimiter",SpellingFixerEC.cstrCaption);
+                WordBoundaryDelimiter = SpellingFixerEC.cstrDefaultWordBoundaryDelimiter
+            };
+            var res = dlg.ShowDialog();
+            if (res == DialogResult.Cancel)
                 return;
-            }
+
+            UpdateRepo(false, dlg);
+        }
+
+        private void UpdateRepo(bool isEditing, AddNewProjectForm dlg)
+        {
+            // get the delimiter for word boundaries and disallow the /"/ character
+            m_strWordBoundaryDelimiter = dlg.WordBoundaryDelimiter;
+            m_isRightToleft = dlg.IsRightToLeft;
 
             bool bRewriteCCTable = false;
 
-            string strPunctuation = EncodePunctuationForCC(this.textBoxAddlPunctuation.Text);
-            if(strPunctuation == null )
+            string strPunctuation = dlg.GetAddlPunctuation(true);
+            if (strPunctuation == null)
+            {
                 return; // it had a bad character
-
-            else if( strPunctuation != m_strNonWordCharacters )
+            }
+            else if (strPunctuation != m_strNonWordCharacters)
             {
                 // this means the file must be re-written
                 bRewriteCCTable = true;
                 m_strNonWordCharacters = strPunctuation;
             }
 
-            if( (!m_bLegacy) != this.checkBoxUnicode.Checked )
-            {
-                m_bLegacy = !this.checkBoxUnicode.Checked;
-                bRewriteCCTable = true;
-            }
-
             // check for existing EncConverter with this same project information
             string strCCTableSpec = null;
-            string strPartialName = this.textBoxNewProjectName.Text;
-            string strEncConverterName = FullName(strPartialName);
-            EncConverters aECs = new EncConverters();
+            var strPartialName = dlg.NewProjectName;
+            var strEncConverterName = FullName(strPartialName);
+            var aECs = new EncConverters();
             IEncConverter aEC = aECs[strEncConverterName];
-            if( aEC != null )
+            if (aEC != null)
             {
                 // if we're *not* in edit mode
-                if( this.buttonAddNewProject.Text == cstrAddNewProjectButtonText )
+                if (!isEditing)
                 {
-                    if( MessageBox.Show(String.Format("A project already exists by the name {0}. Click 'Yes' to overwrite", this.textBoxNewProjectName.Text),SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
+                    if (MessageBox.Show($"A project already exists by the name {strPartialName}. Click 'Yes' to overwrite",
+                                        SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNo)
+                            == DialogResult.Yes)
                     {
                         // take it out of the check box list
                         checkedListBoxProjects.Items.Remove(strPartialName);
                         strCCTableSpec = aEC.ConverterIdentifier;
-                        if( File.Exists(strCCTableSpec) )
+                        if (File.Exists(strCCTableSpec))
                         {
                             File.Delete(strCCTableSpec);
                             strCCTableSpec = null;
@@ -796,14 +296,15 @@ private void buttonAddNewProject_Click(object sender, System.EventArgs e)
 
                         // remove the existing one and we'll add a new one next
                         aECs.Remove(aEC.Name);
-                        aEC = null;
                     }
                     else
                         return;
                 }
                 else    // edit mode
                 {
-                    if( MessageBox.Show(String.Format("Do you want to update the '{0}' project?", this.textBoxNewProjectName.Text),SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
+                    if (MessageBox.Show($"Do you want to update the '{strPartialName}' project?",
+                                        SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNo)
+                            == DialogResult.Yes)
                     {
                         // take it out of the check box list
                         checkedListBoxProjects.Items.Remove(strPartialName);
@@ -813,44 +314,33 @@ private void buttonAddNewProject_Click(object sender, System.EventArgs e)
 
                         // the remove the converter since we'll add it back again next
                         aECs.Remove(aEC.Name);
-                        aEC = null;
                     }
                     else
                     {
-                        // reset this in case we were just editing it.
-                        ResetNewProjectLook();
                         return;
                     }
                 }
             }
 
             // if we're aren't using the old cc table, then...
-            if( strCCTableSpec == null )
+            if (String.IsNullOrEmpty(strCCTableSpec))
             {
                 // now add it (put it in the normal 'MapsTables' folder in \pf\cf\sil\...)
                 string strMapsTableDir = GetMapTableFolderPath;
                 strCCTableSpec = strMapsTableDir + @"\" + strEncConverterName + ".cct";
-                if( File.Exists(strCCTableSpec) )
+                if (File.Exists(strCCTableSpec))
                 {
                     // the converter doesn't exist, but a file with the name we would have 
                     //  given it does... ask the user if they want to overwrite it.
                     // TODO: this doesn't allow for complete flexibility. It might be nicer to
                     //  allow for any arbitrary name, but not if noone complains.
-                    if( MessageBox.Show(String.Format("A file exists by the name {0}. Click 'Yes' to overwrite", strCCTableSpec),SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
+                    if (MessageBox.Show($"A file exists by the name {strCCTableSpec}. Click 'Yes' to overwrite",
+                                        SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNo)
+                            == DialogResult.Yes)
                     {
                         File.Delete(strCCTableSpec);
-#if WriteOnAdd
-// if the user goes to add the first record, it'd be better if the file didn't exist because now we do some
-//  preliminary testing whether the CC table already changes a word before adding a new one, but this causes
-//  a non-trapable error if there are no rules in the file. So just create it when it is actually needed
-                        CreateCCTable(strCCTableSpec,strEncConverterName,m_strNonWordCharacters, !this.m_bLegacy);
-#endif
                     }
                 }
-#if WriteOnAdd
-                else
-                    CreateCCTable(strCCTableSpec,strEncConverterName,m_strNonWordCharacters, !this.m_bLegacy);
-#endif  
                 bRewriteCCTable = false;
             }
 
@@ -858,87 +348,35 @@ private void buttonAddNewProject_Click(object sender, System.EventArgs e)
             // TODO: EncConverters needs a new interface to get the defining encodingID from 
             //  a FontName (so we can use it in this call) just like we can 'try' to get the
             //  code page given a font name (see 'CodePage' below)
-            ConvType eConvType = (m_bLegacy)
-                ? ConvType.Legacy_to_Legacy : ConvType.Unicode_to_Unicode;
+            var eConvType = ConvType.Unicode_to_Unicode;
 
-            aECs.Add(strEncConverterName,strCCTableSpec,eConvType,null,null,SpellingFixerEC.SFProcessType);
-            
-            Font font = null;
-            try
-            {
-                font = new Font(comboBoxFont.SelectedItem.ToString(),Convert.ToSingle(listBoxFontSize.SelectedItem));
-            }
-            catch
-            {
-                MessageBox.Show("Couldn't create the selected font. Contact support");
-                return;
-            }
+            aECs.Add(strEncConverterName, strCCTableSpec, eConvType, null, null, SpellingFixerEC.SFProcessType);
+
+            Font font = dlg.SelectedFont;
 
             // add this 'displaying font' information to the converter as properties/attributes
-            ECAttributes aECAttrs = aECs.Attributes(strEncConverterName,AttributeType.Converter);
-            aECAttrs.Add(SpellingFixerEC.cstrAttributeFontToUse,font.Name);
+            ECAttributes aECAttrs = aECs.Attributes(strEncConverterName, AttributeType.Converter);
+            aECAttrs.Add(SpellingFixerEC.cstrAttributeFontToUse, font.Name);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeFontRightToLeft, m_isRightToleft);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeFontSizeToUse, font.Size);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeWordBoundaryDelimiter, m_strWordBoundaryDelimiter);
             aECAttrs.Add(SpellingFixerEC.cstrAttributeNonWordChars, m_strNonWordCharacters);
 
-            // if it's not Unicode, then we need a code page in order to convert from wide to
-            //  narrow (when writing to the file).
-            int cp = 0;
-            if( m_bLegacy )
-            {
-                // try to get the code page from EncConverters
-                try
-                {
-                    cp = aECs.CodePage(font.Name);
-                }
-                catch
-                {
-                    // if it fails, it means we don't have a mapping, so add one here.
-                    // TODO: it would be nice to have an encoding, but I'm loath to query
-                    //  the user for it here since it isn't extremely relevant to this app.
-                    cp = Convert.ToInt32(this.textBoxCP.Text);
-                    aECs.AddFont(font.Name,cp,null);
-                }
-            }
-
-            if(bRewriteCCTable)    // we are going to continue using the old file... so we must re-write it.
+            if (bRewriteCCTable)    // we are going to continue using the old file... so we must re-write it.
             {
                 // if it was legacy encoded, then we need to convert the data to narrow using
                 //  the code page the user specified (or we got out of the repository)
-                Encoding enc = null;
-                if( m_bLegacy )
-                {
-                    if (cp == EncConverters.cnSymbolFontCodePage)
-                        cp = EncConverters.cnIso8859_1CodePage;
-                    enc = Encoding.GetEncoding(cp);
-                }
-                else
-                    enc = new UTF8Encoding();
+                var enc = new UTF8Encoding();
 
-                DataTable   myTable;
-                if( SpellingFixerEC.InitializeDataTableFromCCTable(strCCTableSpec, enc, m_strWordBoundaryDelimiter, out myTable) )
+                if (SpellingFixerEC.InitializeDataTableFromCCTable(strCCTableSpec, enc, m_strWordBoundaryDelimiter, out DataTable myTable))
                 {
-                    ReWriteCCTableHeader(strCCTableSpec,m_strNonWordCharacters,enc);
                     SpellingFixerEC.AppendCCTableFromDataTable(strCCTableSpec, enc, m_strWordBoundaryDelimiter, m_strNonWordCharacters, myTable);
                 }
             }
 
             // finally, add the new project to the now-visible checkbox list
-            this.buttonOK.Enabled = checkedListBoxProjects.Visible = true;
             ClearClickedItems();
-            checkedListBoxProjects.Items.Add(strPartialName,CheckState.Checked);
-
-            // reset this in case we were just editing it.
-            ResetNewProjectLook();
-        }
-
-        private void ResetNewProjectLook()
-        {
-            this.groupBoxNewProject.Text = cstrNewProjectGroupText;
-            this.buttonAddNewProject.Text = cstrAddNewProjectButtonText;
-            this.toolTips.SetToolTip(this.buttonAddNewProject, cstrAddNewProjectButtonToolTipText);
-            this.textBoxNewProjectName.ReadOnly = false;
+            checkedListBoxProjects.Items.Add(strPartialName, CheckState.Checked);
         }
 
         private void ClearClickedItems()
@@ -947,7 +385,7 @@ private void ClearClickedItems()
                 checkedListBoxProjects.SetItemCheckState(indexChecked,CheckState.Unchecked);
         }
 
-        private void buttonOK_Click(object sender, System.EventArgs e)
+        private void ButtonOK_Click(object sender, System.EventArgs e)
         {
             // When the OK button is clicked, it means the user is choosing the project in 
             //  the project checkbox list. So use *that* information only to fill in the 
@@ -955,16 +393,14 @@ private void buttonOK_Click(object sender, System.EventArgs e)
             //  necessarily true that we added a project during this instantiation, so don't
             //  depend on the internal variables (e.g. m_font, etc.) having something 
             //  meaningful)
-            Debug.Assert( checkedListBoxProjects.Visible );
-            CheckedListBox.CheckedItemCollection aCheckedItems = checkedListBoxProjects.CheckedItems;
+            var aCheckedItems = checkedListBoxProjects.CheckedItems;
 
             // should only be once checked item
-            Debug.Assert(aCheckedItems.Count == 1);
             if( aCheckedItems.Count != 1 )
                 return;
             string strEncConverterName = aCheckedItems[0].ToString();
 
-            if( LoadProject(strEncConverterName) )
+            if (LoadProject(strEncConverterName))
             {
                 DialogResult = DialogResult.OK;
                 this.Close();
@@ -973,8 +409,11 @@ private void buttonOK_Click(object sender, System.EventArgs e)
 
         internal bool LoadProject(string strProjectName)
         {
+            if (String.IsNullOrEmpty(strProjectName))
+                return false;
+
             // get the EncConverter that should have been added above by 'AddNewProject' button
-            EncConverters aECs = new EncConverters();
+            var aECs = new EncConverters();
             var converterName = strProjectName;
             if (strProjectName.StartsWith(SpellingFixerEC.cstrSFConverterPrefix))
             {
@@ -986,11 +425,11 @@ internal bool LoadProject(string strProjectName)
             }
 
             IEncConverter aEC = aECs[converterName];
-            if( aEC != null )
+            if (aEC != null)
             {
                 m_strEncConverterName = aEC.Name;
                 m_strConverterSpec = aEC.ConverterIdentifier;
-                ECAttributes aECAttrs = aECs.Attributes(aEC.Name,AttributeType.Converter);
+                ECAttributes aECAttrs = aECs.Attributes(aEC.Name, AttributeType.Converter);
                 string strFontName = aECAttrs[SpellingFixerEC.cstrAttributeFontToUse];
                 string sFontSize = aECAttrs[SpellingFixerEC.cstrAttributeFontSizeToUse];
                 m_isRightToleft = aECAttrs.ContainsKey(SpellingFixerEC.cstrAttributeFontRightToLeft) && (aECAttrs[SpellingFixerEC.cstrAttributeFontRightToLeft] == "true");
@@ -998,36 +437,23 @@ internal bool LoadProject(string strProjectName)
                 m_strNonWordCharacters = aECAttrs[SpellingFixerEC.cstrAttributeNonWordChars];
 
                 // new in 1.2 (so it might not exist)
-                if( m_strNonWordCharacters == null )
-                    m_strNonWordCharacters = SpellingFixerEC.GetDefaultPunctuation;
-                
-                // if this was added (without having been made on this system), then
-                //  these properties doesn't get added automatically. Must go to edit mode!
-                if((strFontName == null)
-                    ||  (sFontSize == null)
-                    ||  (m_strWordBoundaryDelimiter == null) )
-                {
-                    MessageBox.Show("It looks like this project was added to the repository incorrectly because it's missing some important properties. You'll need to edit it again to set the font, and other values.");
-                    DoEdit(aECs, aEC, strProjectName, strFontName, sFontSize);
+                m_strNonWordCharacters ??= SpellingFixerEC.GetDefaultPunctuation;
 
-                    // make the "Update" button the default button
-                    this.AcceptButton = this.buttonAddNewProject;
-                    return false;
-                }
-
-                float fFontSize = (float)0.0;
-                try
+                // if this was added (without having been made on this computer), then
+                //  these properties don't get added automatically. Must go to edit mode!
+                if (String.IsNullOrEmpty(strFontName)
+                    || String.IsNullOrEmpty(sFontSize)
+                    || String.IsNullOrEmpty(m_strWordBoundaryDelimiter))
                 {
-                    fFontSize = (float)Convert.ToSingle(sFontSize);
+                    MessageBox.Show("This converter is missing some important properties. You'll need to edit it again to set the font, and other values.");
+                    DoEdit(strProjectName, strFontName, sFontSize);
+                    return false;
                 }
-                catch {}
 
-                if( (strFontName != "") && (fFontSize != 0.0) )
-                    m_font = new Font(strFontName,fFontSize);
+                var fFontSize = GetFloatFontSize(sFontSize);
 
-                m_bLegacy = (aEC.ConversionType == ConvType.Legacy_to_Legacy);
-                if( m_bLegacy )
-                    m_cp = aECs.CodePage(strFontName);
+                if (!String.IsNullOrEmpty(strFontName) && (fFontSize != 0.0))
+                    m_font = new Font(strFontName, fFontSize);
 
                 RegistryKey keyLastSFProject = Registry.CurrentUser.CreateSubKey(cstrProjectMemoryKey);
                 keyLastSFProject.SetValue(cstrProjectMostRecentProject, strProjectName);
@@ -1037,60 +463,25 @@ internal bool LoadProject(string strProjectName)
             return false;
         }
 
-        private void buttonCancel_Click(object sender, System.EventArgs e)
-        {
-            DialogResult = DialogResult.Cancel;
-            this.Close();
-        }
-
-        private void textBoxNewProjectName_TextChanged(object sender, System.EventArgs e)
-        {
-            // check to see if the Add button should be enable.
-            EnableAddNewProjectButton();
-        }
-
-        private void comboBoxFont_SelectedIndexChanged(object sender, System.EventArgs e)
-        {
-            // check to see if the Add button should be enable.
-            EnableAddNewProjectButton();
-        }
-
-        private void listBoxFontSize_SelectedIndexChanged(object sender, System.EventArgs e)
-        {
-            // check to see if the Add button should be enable.
-            EnableAddNewProjectButton();
-        }
-
-        private void checkBoxUnicode_CheckedChanged(object sender, System.EventArgs e)
+        private static float GetFloatFontSize(string sFontSize)
         {
-            // check to see if the Add button should be enable.
-            EnableAddNewProjectButton();
-            bool bIsLegacy = !this.checkBoxUnicode.Checked;
-            this.labelCP.Visible = this.textBoxCP.Visible = bIsLegacy;
-
-            // if it's a legacy encoding, then see if the repository already has a cp for
-            //  this font
-            if( bIsLegacy )
+            var fFontSize = (float)0.0;
+            try
             {
-                EncConverters aECs = new EncConverters();
-                int cp = (this.textBoxCP.Text != "") ? Convert.ToInt32(this.textBoxCP.Text) : 1252;
-                try
-                {
-                    if( (comboBoxFont.SelectedItem != null) && (comboBoxFont.SelectedItem.ToString() != "") )
-                        cp = aECs.CodePage(comboBoxFont.SelectedItem.ToString());
-                }
-                catch {}
-                this.textBoxCP.Text = cp.ToString();
+                fFontSize = (float)Convert.ToSingle(sFontSize);
             }
+            catch { }
+
+            return fFontSize;
         }
 
-        private void textBoxCP_TextChanged(object sender, System.EventArgs e)
+        private void ButtonCancel_Click(object sender, System.EventArgs e)
         {
-            // check to see if the Add button should be enable.
-            EnableAddNewProjectButton();
+            DialogResult = DialogResult.Cancel;
+            this.Close();
         }
 
-        private void checkedListBoxProjects_SelectedIndexChanged(object sender, System.EventArgs e)
+        private void CheckedListBoxProjects_SelectedIndexChanged(object sender, System.EventArgs e)
         {
             int nIndex = checkedListBoxProjects.SelectedIndex;
             ClearClickedItems();
@@ -1101,13 +492,13 @@ private void checkedListBoxProjects_SelectedIndexChanged(object sender, System.E
         // get the point at which the right mouse button was clicked (for subsequent pop-up
         //  menu processing)
         private Point m_ptRightClicked;
-        private void checkedListBoxProjects_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
+        private void CheckedListBoxProjects_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
         {
             // don't want now that I support double-click if( e.Button == MouseButtons.Right )
             m_ptRightClicked = new Point(e.X,e.Y);
         }
         
-        private void menuItemClick_Click(object sender, System.EventArgs e)
+        private void MenuItemClick_Click(object sender, System.EventArgs e)
         {
             int nIndex = checkedListBoxProjects.IndexFromPoint(m_ptRightClicked);
             if( nIndex >= 0 )
@@ -1117,7 +508,7 @@ private void menuItemClick_Click(object sender, System.EventArgs e)
             }
         }
 
-        private void menuItemDelete_Click(object sender, System.EventArgs e)
+        private void MenuItemDelete_Click(object sender, System.EventArgs e)
         {
             int nIndex = checkedListBoxProjects.IndexFromPoint(m_ptRightClicked);
             if( nIndex >= 0 )
@@ -1125,7 +516,7 @@ private void menuItemDelete_Click(object sender, System.EventArgs e)
                 string strProjectName = checkedListBoxProjects.Items[nIndex].ToString();
                 if( MessageBox.Show(String.Format("Are you sure you want to delete the '{0}' project?",strProjectName), SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
                 {
-                    EncConverters aECs = new EncConverters();
+                    var aECs = new EncConverters();
                     IEncConverter aEC = aECs[FullName(strProjectName)];
                     if( aEC != null )
                     {
@@ -1143,15 +534,11 @@ private void menuItemDelete_Click(object sender, System.EventArgs e)
                     }
 
                     checkedListBoxProjects.Items.Remove(strProjectName);
-
-                    if( this.checkedListBoxProjects.Items.Count == 0 )
-                        this.AcceptButton = this.buttonAddNewProject;
-                    EnableAddNewProjectButton();
                 }
             }
         }
 
-        private void menuItemEdit_Click(object sender, System.EventArgs e)
+        private void MenuItemEdit_Click(object sender, System.EventArgs e)
         {
             // Provide a way to edit the info (in case the user wants to change the 
             //  font, size, or delimter. 
@@ -1159,7 +546,7 @@ private void menuItemEdit_Click(object sender, System.EventArgs e)
             if( nIndex >= 0 )
             {
                 string strProjectName = checkedListBoxProjects.Items[nIndex].ToString();
-                EncConverters aECs = new EncConverters();
+                var aECs = new EncConverters();
                 IEncConverter aEC = aECs[FullName(strProjectName)];
                 if( aEC != null )
                 {
@@ -1173,53 +560,40 @@ private void menuItemEdit_Click(object sender, System.EventArgs e)
                     m_strWordBoundaryDelimiter = aECAttrs[SpellingFixerEC.cstrAttributeWordBoundaryDelimiter];
                     m_strNonWordCharacters = aECAttrs[SpellingFixerEC.cstrAttributeNonWordChars];
 
-                    DoEdit(aECs, aEC, strProjectName, strFontName, sFontSize);
+                    DoEdit(strProjectName, strFontName, sFontSize);
                 }
-
-                // make the "Update" button the default button
-                this.AcceptButton = this.buttonAddNewProject;
             }
         }
 
-        private void DoEdit(EncConverters aECs, IEncConverter aEC, string strProjectName, string strFontName, string sFontSize)
+        private void DoEdit(string strProjectName, string strFontName, string sFontSize)
         {
-            this.textBoxNewProjectName.Text = strProjectName;
-            this.textBoxWordBoundaryDelimiter.Text = m_strWordBoundaryDelimiter;
+            m_font = new Font(strFontName, GetFloatFontSize(sFontSize));
 
-            // new in 1.2 (so it might not exist)
-            this.textBoxAddlPunctuation.Text = this.DecodePunctuationForCC(m_strNonWordCharacters);
-
-            this.listBoxFontSize.SelectedItem = sFontSize;
-            this.comboBoxFont.SelectedItem = strFontName;
-
-            m_bLegacy = (aEC.ConversionType == ConvType.Legacy_to_Legacy);
-            this.checkBoxUnicode.Checked = !m_bLegacy;
-            if( m_bLegacy )
+            var dlg = new AddNewProjectForm(m_strNonWordCharacters)
             {
-                this.labelCP.Visible = this.textBoxCP.Visible = true;
-                this.textBoxCP.Text = aECs.CodePage(strFontName).ToString();
-            }
-
-            checkBoxRtL.Checked = m_isRightToleft;
+                NewProjectName = strProjectName,
+                WordBoundaryDelimiter = m_strWordBoundaryDelimiter,
+                SelectedFont = m_font,
+                IsRightToLeft = m_isRightToleft,
+            };
+
+            var res = dlg.ShowDialog();
+            if (res == DialogResult.Cancel)
+                return;
 
-            // update the "Add New Project" button to say "Update Project"
-            this.groupBoxNewProject.Text = "Edit Project Settings";
-            this.buttonAddNewProject.Text = "Update &Project";
-            this.toolTips.SetToolTip(this.buttonAddNewProject, "Click to update the project information");
-            this.textBoxNewProjectName.ReadOnly = true;
-            EnableAddNewProjectButton();
+            UpdateRepo(true, dlg);
         }
 
-        private void menuItemDeleteAll_Click(object sender, System.EventArgs e)
+        private void MenuItemDeleteAll_Click(object sender, System.EventArgs e)
         {
             // verify first!
             if( MessageBox.Show("Are you sure you want to delete all the existing projects?", SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
             {
-                EncConverters aECs = new EncConverters();
+                var aECs = new EncConverters();
                 foreach(string strProjectName in checkedListBoxProjects.Items)
                 {
                     IEncConverter aEC = aECs[FullName(strProjectName)];
-                    if( aEC != null )
+                    if (aEC != null)
                     {
                         // if they do this, then don't bother querying about saving the files.
                         if( File.Exists(aEC.ConverterIdentifier) )
@@ -1233,21 +607,22 @@ private void menuItemDeleteAll_Click(object sender, System.EventArgs e)
                 // now remove them from the checkbox list
                 while( checkedListBoxProjects.Items.Count > 0 )
                     checkedListBoxProjects.Items.RemoveAt(0);
-
-                this.buttonOK.Enabled = this.checkedListBoxProjects.Visible = false;
-                this.AcceptButton = this.buttonAddNewProject;
             }
         }
 
         // double click means edit
-        private void checkedListBoxProjects_DoubleClick(object sender, EventArgs e)
+        private void CheckedListBoxProjects_DoubleClick(object sender, EventArgs e)
         {
-            this.menuItemEdit_Click(sender,e);
+            this.MenuItemEdit_Click(sender,e);
         }
 
-        private void textBoxWordBoundaryDelimiter_TextChanged(object sender, EventArgs e)
+        private void LoginSF_Shown(object sender, EventArgs e)
         {
-            EnableAddNewProjectButton();
+            buttonAddNewProject.Visible = !ProjectsExist;
+            if (buttonAddNewProject.Visible)
+            {
+                AddNewProject();
+            }
         }
     }
 }
\ No newline at end of file
diff --git a/src/SpellingFixerEC/LoginSF.resx b/src/SpellingFixerEC/LoginSF.resx
index d1a32f38..6c2177b8 100644
--- a/src/SpellingFixerEC/LoginSF.resx
+++ b/src/SpellingFixerEC/LoginSF.resx
@@ -120,12 +120,6 @@
   <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>17, 17</value>
   </metadata>
-  <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>17, 17</value>
-  </metadata>
-  <data name="textBoxWordBoundaryDelimiter.ToolTip" xml:space="preserve">
-    <value>Enter the character(s) to use as a word boundary delimiter (e.g. with a delimiter of "#", you can enter the "bad spelling" words like: #car#, which will only match if the search string is "car", but not "cars" or "sportscar")</value>
-  </data>
   <metadata name="contextMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>107, 17</value>
   </metadata>
diff --git a/src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs b/src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs
index ff645da9..91080157 100644
--- a/src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs
+++ b/src/SpellingFixerEC/QueryFindReplaceDialog.Designer.cs
@@ -72,8 +72,9 @@ private void InitializeComponent()
             this.tableLayoutPanel.Controls.Add(this.textBoxWordBoundaryFindText, 2, 2);
             this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
             this.tableLayoutPanel.Location = new System.Drawing.Point(0, 0);
+            this.tableLayoutPanel.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.tableLayoutPanel.Name = "tableLayoutPanel";
-            this.tableLayoutPanel.Padding = new System.Windows.Forms.Padding(25);
+            this.tableLayoutPanel.Padding = new System.Windows.Forms.Padding(12, 13, 12, 13);
             this.tableLayoutPanel.RowCount = 6;
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
@@ -81,16 +82,17 @@ private void InitializeComponent()
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.tableLayoutPanel.Size = new System.Drawing.Size(993, 598);
+            this.tableLayoutPanel.Size = new System.Drawing.Size(496, 311);
             this.tableLayoutPanel.TabIndex = 0;
             // 
             // labelFind
             // 
             this.labelFind.Anchor = System.Windows.Forms.AnchorStyles.Right;
             this.labelFind.AutoSize = true;
-            this.labelFind.Location = new System.Drawing.Point(94, 31);
+            this.labelFind.Location = new System.Drawing.Point(47, 18);
+            this.labelFind.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
             this.labelFind.Name = "labelFind";
-            this.labelFind.Size = new System.Drawing.Size(60, 25);
+            this.labelFind.Size = new System.Drawing.Size(30, 13);
             this.labelFind.TabIndex = 0;
             this.labelFind.Text = "Find:";
             // 
@@ -98,21 +100,23 @@ private void InitializeComponent()
             // 
             this.tableLayoutPanel.SetColumnSpan(this.textBoxFindWord, 4);
             this.textBoxFindWord.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.textBoxFindWord.Location = new System.Drawing.Point(160, 28);
+            this.textBoxFindWord.Location = new System.Drawing.Point(81, 15);
+            this.textBoxFindWord.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.textBoxFindWord.Name = "textBoxFindWord";
-            this.textBoxFindWord.Size = new System.Drawing.Size(805, 31);
-            this.textBoxFindWord.TabIndex = 3;
+            this.textBoxFindWord.Size = new System.Drawing.Size(401, 20);
+            this.textBoxFindWord.TabIndex = 2;
             this.toolTip.SetToolTip(this.textBoxFindWord, "The word (or part of a word) to replace");
-            this.textBoxFindWord.TextChanged += new System.EventHandler(this.textBoxFindWord_TextChanged);
-            this.textBoxFindWord.Enter += new System.EventHandler(this.textBoxFindWord_Enter);
+            this.textBoxFindWord.TextChanged += new System.EventHandler(this.TextBoxFindWord_TextChanged);
+            this.textBoxFindWord.Enter += new System.EventHandler(this.TextBoxFindWord_Enter);
             // 
             // labelReplace
             // 
             this.labelReplace.Anchor = System.Windows.Forms.AnchorStyles.Right;
             this.labelReplace.AutoSize = true;
-            this.labelReplace.Location = new System.Drawing.Point(57, 68);
+            this.labelReplace.Location = new System.Drawing.Point(27, 42);
+            this.labelReplace.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
             this.labelReplace.Name = "labelReplace";
-            this.labelReplace.Size = new System.Drawing.Size(97, 25);
+            this.labelReplace.Size = new System.Drawing.Size(50, 13);
             this.labelReplace.TabIndex = 1;
             this.labelReplace.Text = "Replace:";
             // 
@@ -120,49 +124,53 @@ private void InitializeComponent()
             // 
             this.tableLayoutPanel.SetColumnSpan(this.textBoxReplaceWord, 4);
             this.textBoxReplaceWord.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.textBoxReplaceWord.Location = new System.Drawing.Point(160, 65);
+            this.textBoxReplaceWord.Location = new System.Drawing.Point(81, 39);
+            this.textBoxReplaceWord.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.textBoxReplaceWord.Name = "textBoxReplaceWord";
-            this.textBoxReplaceWord.Size = new System.Drawing.Size(805, 31);
-            this.textBoxReplaceWord.TabIndex = 4;
+            this.textBoxReplaceWord.Size = new System.Drawing.Size(401, 20);
+            this.textBoxReplaceWord.TabIndex = 1;
             this.toolTip.SetToolTip(this.textBoxReplaceWord, "The replacement word");
-            this.textBoxReplaceWord.TextChanged += new System.EventHandler(this.textBoxReplaceWord_TextChanged);
-            this.textBoxReplaceWord.Enter += new System.EventHandler(this.textBoxReplaceWord_Enter);
+            this.textBoxReplaceWord.TextChanged += new System.EventHandler(this.TextBoxReplaceWord_TextChanged);
+            this.textBoxReplaceWord.Enter += new System.EventHandler(this.TextBoxReplaceWord_Enter);
             // 
             // groupBoxWordBoundaries
             // 
             this.tableLayoutPanel.SetColumnSpan(this.groupBoxWordBoundaries, 2);
             this.groupBoxWordBoundaries.Controls.Add(this.checkBoxWordFinal);
             this.groupBoxWordBoundaries.Controls.Add(this.checkBoxWordInitial);
-            this.groupBoxWordBoundaries.Location = new System.Drawing.Point(28, 102);
+            this.groupBoxWordBoundaries.Location = new System.Drawing.Point(14, 63);
+            this.groupBoxWordBoundaries.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.groupBoxWordBoundaries.Name = "groupBoxWordBoundaries";
-            this.groupBoxWordBoundaries.Padding = new System.Windows.Forms.Padding(10);
-            this.groupBoxWordBoundaries.Size = new System.Drawing.Size(301, 101);
-            this.groupBoxWordBoundaries.TabIndex = 10;
+            this.groupBoxWordBoundaries.Padding = new System.Windows.Forms.Padding(5, 5, 5, 5);
+            this.groupBoxWordBoundaries.Size = new System.Drawing.Size(150, 53);
+            this.groupBoxWordBoundaries.TabIndex = 3;
             this.groupBoxWordBoundaries.TabStop = false;
             this.groupBoxWordBoundaries.Text = "Word Boundaries";
             // 
             // checkBoxWordFinal
             // 
             this.checkBoxWordFinal.AutoSize = true;
-            this.checkBoxWordFinal.Location = new System.Drawing.Point(187, 37);
+            this.checkBoxWordFinal.Location = new System.Drawing.Point(94, 19);
+            this.checkBoxWordFinal.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.checkBoxWordFinal.Name = "checkBoxWordFinal";
-            this.checkBoxWordFinal.Size = new System.Drawing.Size(82, 29);
-            this.checkBoxWordFinal.TabIndex = 1;
+            this.checkBoxWordFinal.Size = new System.Drawing.Size(45, 17);
+            this.checkBoxWordFinal.TabIndex = 5;
             this.checkBoxWordFinal.Text = "End";
             this.checkBoxWordFinal.UseVisualStyleBackColor = true;
-            this.checkBoxWordFinal.CheckedChanged += new System.EventHandler(this.checkBoxWordBoundary_CheckedChanged);
+            this.checkBoxWordFinal.CheckedChanged += new System.EventHandler(this.CheckBoxWordBoundary_CheckedChanged);
             // 
             // checkBoxWordInitial
             // 
             this.checkBoxWordInitial.AutoSize = true;
-            this.checkBoxWordInitial.Location = new System.Drawing.Point(28, 37);
+            this.checkBoxWordInitial.Location = new System.Drawing.Point(14, 19);
+            this.checkBoxWordInitial.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.checkBoxWordInitial.Name = "checkBoxWordInitial";
-            this.checkBoxWordInitial.Size = new System.Drawing.Size(140, 29);
-            this.checkBoxWordInitial.TabIndex = 0;
+            this.checkBoxWordInitial.Size = new System.Drawing.Size(73, 17);
+            this.checkBoxWordInitial.TabIndex = 4;
             this.checkBoxWordInitial.Text = "Beginning";
             this.toolTip.SetToolTip(this.checkBoxWordInitial, "Click to force the find to use use an initial ");
             this.checkBoxWordInitial.UseVisualStyleBackColor = true;
-            this.checkBoxWordInitial.CheckedChanged += new System.EventHandler(this.checkBoxWordBoundary_CheckedChanged);
+            this.checkBoxWordInitial.CheckedChanged += new System.EventHandler(this.CheckBoxWordBoundary_CheckedChanged);
             // 
             // labelUnicodeCodes
             // 
@@ -170,11 +178,12 @@ private void InitializeComponent()
             this.labelUnicodeCodes.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
             this.tableLayoutPanel.SetColumnSpan(this.labelUnicodeCodes, 5);
             this.labelUnicodeCodes.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.labelUnicodeCodes.Location = new System.Drawing.Point(28, 206);
+            this.labelUnicodeCodes.Location = new System.Drawing.Point(14, 118);
+            this.labelUnicodeCodes.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
             this.labelUnicodeCodes.Name = "labelUnicodeCodes";
-            this.labelUnicodeCodes.Padding = new System.Windows.Forms.Padding(10);
-            this.labelUnicodeCodes.Size = new System.Drawing.Size(937, 278);
-            this.labelUnicodeCodes.TabIndex = 5;
+            this.labelUnicodeCodes.Padding = new System.Windows.Forms.Padding(5, 5, 5, 5);
+            this.labelUnicodeCodes.Size = new System.Drawing.Size(468, 128);
+            this.labelUnicodeCodes.TabIndex = 9;
             this.labelUnicodeCodes.Text = "labelUnicodeCodes";
             this.toolTip.SetToolTip(this.labelUnicodeCodes, "This area shows the Unicode code point values for the characters in the box above" +
         " which has focus. You can use this to see hidden characters (e.g. zero width joi" +
@@ -184,10 +193,11 @@ private void InitializeComponent()
             // 
             this.labelAddedFromOriginalWord.AutoSize = true;
             this.tableLayoutPanel.SetColumnSpan(this.labelAddedFromOriginalWord, 2);
-            this.labelAddedFromOriginalWord.Location = new System.Drawing.Point(28, 484);
+            this.labelAddedFromOriginalWord.Location = new System.Drawing.Point(14, 246);
+            this.labelAddedFromOriginalWord.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
             this.labelAddedFromOriginalWord.Name = "labelAddedFromOriginalWord";
-            this.labelAddedFromOriginalWord.Size = new System.Drawing.Size(275, 25);
-            this.labelAddedFromOriginalWord.TabIndex = 6;
+            this.labelAddedFromOriginalWord.Size = new System.Drawing.Size(136, 13);
+            this.labelAddedFromOriginalWord.TabIndex = 10;
             this.labelAddedFromOriginalWord.Text = "Added while Clipboard had:";
             this.toolTip.SetToolTip(this.labelAddedFromOriginalWord, "This word was on the clipboard when the dialog opened.");
             this.labelAddedFromOriginalWord.Visible = false;
@@ -196,42 +206,46 @@ private void InitializeComponent()
             // 
             this.tableLayoutPanel.SetColumnSpan(this.textBoxOriginalWord, 3);
             this.textBoxOriginalWord.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.textBoxOriginalWord.Location = new System.Drawing.Point(335, 487);
+            this.textBoxOriginalWord.Location = new System.Drawing.Point(168, 248);
+            this.textBoxOriginalWord.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.textBoxOriginalWord.Name = "textBoxOriginalWord";
             this.textBoxOriginalWord.ReadOnly = true;
-            this.textBoxOriginalWord.Size = new System.Drawing.Size(630, 31);
-            this.textBoxOriginalWord.TabIndex = 7;
+            this.textBoxOriginalWord.Size = new System.Drawing.Size(314, 20);
+            this.textBoxOriginalWord.TabIndex = 11;
             this.toolTip.SetToolTip(this.textBoxOriginalWord, "Word originally on the Clipboard when this dialog opened.");
             this.textBoxOriginalWord.Visible = false;
             // 
             // buttonDelete
             // 
             this.buttonDelete.DialogResult = System.Windows.Forms.DialogResult.Abort;
-            this.buttonDelete.Location = new System.Drawing.Point(28, 524);
+            this.buttonDelete.Location = new System.Drawing.Point(14, 272);
+            this.buttonDelete.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.buttonDelete.Name = "buttonDelete";
-            this.buttonDelete.Size = new System.Drawing.Size(126, 46);
-            this.buttonDelete.TabIndex = 2;
+            this.buttonDelete.Size = new System.Drawing.Size(63, 24);
+            this.buttonDelete.TabIndex = 8;
             this.buttonDelete.Text = "Delete";
             this.buttonDelete.UseVisualStyleBackColor = true;
-            this.buttonDelete.Click += new System.EventHandler(this.buttonDelete_Click);
+            this.buttonDelete.Click += new System.EventHandler(this.ButtonDelete_Click);
             // 
             // buttonOk
             // 
             this.buttonOk.DialogResult = System.Windows.Forms.DialogResult.OK;
-            this.buttonOk.Location = new System.Drawing.Point(713, 524);
+            this.buttonOk.Location = new System.Drawing.Point(354, 272);
+            this.buttonOk.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.buttonOk.Name = "buttonOk";
-            this.buttonOk.Size = new System.Drawing.Size(123, 46);
-            this.buttonOk.TabIndex = 8;
+            this.buttonOk.Size = new System.Drawing.Size(62, 24);
+            this.buttonOk.TabIndex = 6;
             this.buttonOk.Text = "OK";
             this.buttonOk.UseVisualStyleBackColor = true;
             // 
             // buttonCancel
             // 
             this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.buttonCancel.Location = new System.Drawing.Point(842, 524);
+            this.buttonCancel.Location = new System.Drawing.Point(420, 272);
+            this.buttonCancel.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.buttonCancel.Name = "buttonCancel";
-            this.buttonCancel.Size = new System.Drawing.Size(123, 46);
-            this.buttonCancel.TabIndex = 8;
+            this.buttonCancel.Size = new System.Drawing.Size(62, 24);
+            this.buttonCancel.TabIndex = 7;
             this.buttonCancel.Text = "Cancel";
             this.buttonCancel.UseVisualStyleBackColor = true;
             // 
@@ -239,19 +253,21 @@ private void InitializeComponent()
             // 
             this.textBoxWordBoundaryFindText.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
             this.tableLayoutPanel.SetColumnSpan(this.textBoxWordBoundaryFindText, 3);
-            this.textBoxWordBoundaryFindText.Location = new System.Drawing.Point(335, 137);
+            this.textBoxWordBoundaryFindText.Location = new System.Drawing.Point(168, 79);
+            this.textBoxWordBoundaryFindText.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.textBoxWordBoundaryFindText.Name = "textBoxWordBoundaryFindText";
             this.textBoxWordBoundaryFindText.ReadOnly = true;
-            this.textBoxWordBoundaryFindText.Size = new System.Drawing.Size(630, 31);
-            this.textBoxWordBoundaryFindText.TabIndex = 2;
+            this.textBoxWordBoundaryFindText.Size = new System.Drawing.Size(314, 20);
+            this.textBoxWordBoundaryFindText.TabIndex = 8;
             // 
             // QueryFindReplaceDialog
             // 
-            this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 25F);
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(993, 598);
+            this.ClientSize = new System.Drawing.Size(496, 311);
             this.Controls.Add(this.tableLayoutPanel);
             this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+            this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
             this.Name = "QueryFindReplaceDialog";
             this.Text = "Find & Replace (CC)";
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.QueryFindReplaceDialog_FormClosing);
diff --git a/src/SpellingFixerEC/QueryFindReplaceDialog.cs b/src/SpellingFixerEC/QueryFindReplaceDialog.cs
index e199da1c..3b30b2c5 100644
--- a/src/SpellingFixerEC/QueryFindReplaceDialog.cs
+++ b/src/SpellingFixerEC/QueryFindReplaceDialog.cs
@@ -31,7 +31,7 @@ private String BoundaryInitial
         {
             get
             {
-                return (_isBoundaryInitial) ? BoundaryCharacter : String.Empty;
+                return (IsBoundaryInitial) ? BoundaryCharacter : String.Empty;
             }
         }
 
@@ -39,7 +39,7 @@ private String BoundaryFinal
         {
             get
             {
-                return (_isBoundaryFinal) ? BoundaryCharacter : String.Empty;
+                return (IsBoundaryFinal) ? BoundaryCharacter : String.Empty;
             }
         }
 
@@ -47,7 +47,7 @@ public QueryFindReplaceDialog(Font font)
         {
             InitializeComponent();
 
-            textBoxFindWord.Font = font = 
+            textBoxFindWord.Font = 
                 textBoxOriginalWord.Font =
                 textBoxWordBoundaryFindText.Font = 
                 textBoxReplaceWord.Font = font;
@@ -58,13 +58,13 @@ public DialogResult ShowDialog(string findWhat, string replaceWith, string origi
         {
             if (findWhat?.StartsWith(boundaryCharacter) ?? false)
             {
-                _isBoundaryInitial = checkBoxWordInitial.Checked = true;
+                IsBoundaryInitial = checkBoxWordInitial.Checked = true;
                 findWhat = findWhat.Substring(1);
             }
 
             if (findWhat?.EndsWith(boundaryCharacter) ?? false)
             {
-                _isBoundaryFinal = checkBoxWordFinal.Checked = true;
+                IsBoundaryFinal = checkBoxWordFinal.Checked = true;
                 findWhat = findWhat.Substring(0, findWhat.Length - 1);
             }
 
@@ -111,16 +111,17 @@ public DialogResult ShowDialog(string findWhat, string replaceWith, string origi
 
         private void UpdateUniCodes(string strInputString)
         {
-            int nLenString = strInputString.Length;
-
-            string strWhole = null, strPiece = null, strUPiece = null;
+            string strWhole = null;
             foreach (char ch in strInputString)
             {
+                string strPiece;
                 if (ch == 0)   // sometimes it's null (esp. for utf32)
+                {
                     strPiece = "nul (u0000)  ";
+                }
                 else
                 {
-                    strUPiece = String.Format("{0:X}", (int)ch);
+                    var strUPiece = String.Format("{0:X}", (int)ch);
 
                     // left pad with 0's (there may be a better way to do this, but 
                     //  I don't know what it is)
@@ -134,41 +135,41 @@ private void UpdateUniCodes(string strInputString)
             labelUnicodeCodes.Text = strWhole;
         }
 
-        private void checkBoxWordBoundary_CheckedChanged(object sender, EventArgs e)
+        private void CheckBoxWordBoundary_CheckedChanged(object sender, EventArgs e)
         {
             UpdateFindWhatDisplay();
         }
 
-        private void textBoxFindWord_TextChanged(object sender, EventArgs e)
+        private void TextBoxFindWord_TextChanged(object sender, EventArgs e)
         {
             FindWhat = textBoxFindWord.Text;
             UpdateFindWhatDisplay();
             UpdateUniCodes(textBoxFindWord.Text);
         }
 
-        private void textBoxReplaceWord_TextChanged(object sender, EventArgs e)
+        private void TextBoxReplaceWord_TextChanged(object sender, EventArgs e)
         {
             UpdateUniCodes(textBoxReplaceWord.Text);
             ReplaceWith = textBoxReplaceWord.Text;
         }
 
-        private void textBoxFindWord_Enter(object sender, EventArgs e)
+        private void TextBoxFindWord_Enter(object sender, EventArgs e)
         {
             UpdateUniCodes(textBoxFindWord.Text);
         }
 
-        private void textBoxReplaceWord_Enter(object sender, EventArgs e)
+        private void TextBoxReplaceWord_Enter(object sender, EventArgs e)
         {
             UpdateUniCodes(textBoxReplaceWord.Text);
         }
 
-        private bool _isBoundaryInitial { get; set; }
-        private bool _isBoundaryFinal { get; set; }
+        private bool IsBoundaryInitial { get; set; }
+        private bool IsBoundaryFinal { get; set; }
 
         private void UpdateFindWhatDisplay()
         {
-            _isBoundaryInitial = checkBoxWordInitial.Checked;
-            _isBoundaryFinal = checkBoxWordFinal.Checked;
+            IsBoundaryInitial = checkBoxWordInitial.Checked;
+            IsBoundaryFinal = checkBoxWordFinal.Checked;
 
             textBoxWordBoundaryFindText.Text = FindWhat;
         }
@@ -182,7 +183,7 @@ private void QueryFindReplaceDialog_FormClosing(object sender, FormClosingEventA
             }
         }
 
-        private void buttonDelete_Click(object sender, EventArgs e)
+        private void ButtonDelete_Click(object sender, EventArgs e)
         {
             Close();    // button has DialogResult.Abort associated w/ it, which triggers the caller to delete
         }
diff --git a/src/SpellingFixerEC/SpellingFixerEC.cs b/src/SpellingFixerEC/SpellingFixerEC.cs
index 37130052..055f59ed 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.cs
+++ b/src/SpellingFixerEC/SpellingFixerEC.cs
@@ -46,11 +46,8 @@ public class SpellingFixerEC
         private string m_strNonWordChars;
         private string m_strConverterSpec;
         private string m_strEncConverterName;
-        private bool m_bLegacy;
         private bool m_isRightToLeft;
 
-        private int m_cp = 1252;
-
         // leave a default constructor which *doesn't* automatically log-in to a project for 
         //  COM clients that want to use CscProject via SelectProject below.
         public SpellingFixerEC()
@@ -63,13 +60,10 @@ public SpellingFixerEC()
         /// </summary>
         public void LoginProject()
         {
-            LoginSF login = new LoginSF();
+            var login = new LoginSF();
             if (login.ShowDialog() == DialogResult.OK)
             {
                 m_font = login.FontToUse;
-                m_bLegacy = login.IsLegacy;
-                if (m_bLegacy)
-                    m_cp = login.CpToUse;
                 m_isRightToLeft = login.IsRightToLeft;
                 m_strConverterSpec = login.ConverterSpec;
                 SpellFixerEncConverterName = login.EncConverterName;
@@ -82,13 +76,10 @@ public void LoginProject()
 
         public SpellingFixerEC(string strProjectName)
         {
-            LoginSF login = new LoginSF();
+            var login = new LoginSF();
             if (login.LoadProject(strProjectName))
             {
                 m_font = login.FontToUse;
-                m_bLegacy = login.IsLegacy;
-                if (m_bLegacy)
-                    m_cp = login.CpToUse;
                 m_isRightToLeft = login.IsRightToLeft;
                 m_strConverterSpec = login.ConverterSpec;
                 SpellFixerEncConverterName = login.EncConverterName;
@@ -106,10 +97,7 @@ public SpellingFixerEC(string strProjectName, Font font, string strConverterSpec
             [Optional, DefaultParameterValue(false)] bool bRightToLeft)
         {
             m_font = font;
-            m_bLegacy = bLegacy;
             m_isRightToLeft = bRightToLeft;
-            if (m_bLegacy)
-                m_cp = cp;
             m_strConverterSpec = strConverterSpec;
             SpellFixerEncConverterName = strEncConverterName;
             WordBoundaryDelimiter = strWordBoundaryDelimiter;
@@ -150,8 +138,8 @@ public IEncConverter SpellFixerEncConverter
                 if (m_strEncConverterName == null)
                     return null;
 
-                EncConverters aECs = new EncConverters();
-                IEncConverter aEC = null;
+                var aECs = new EncConverters();
+                IEncConverter aEC;
                 if (aECs.ContainsKey(m_strEncConverterName))
                     aEC = aECs[m_strEncConverterName];
                 else
@@ -159,9 +147,9 @@ public IEncConverter SpellFixerEncConverter
                     aEC = new CcEncConverter();
                     string strDummy = null;
                     int nProcType = 0;
-                    ConvType eConvType = (m_bLegacy) ? ConvType.Legacy_to_Legacy : ConvType.Unicode_to_Unicode;
+                    var eConvType = ConvType.Unicode_to_Unicode;
                     aEC.Initialize(m_strEncConverterName, m_strConverterSpec, ref strDummy, ref strDummy,
-                        ref eConvType, ref nProcType, m_cp, m_cp, true);
+                        ref eConvType, ref nProcType, 0, 0, true);
                 }
 
                 return aEC;
@@ -196,9 +184,8 @@ public void QueryForSpellingCorrectionIfTableEmpty(string strBadWord)
             // even if the file exists, it might have no rules, so double-check
             if (File.Exists(m_strConverterSpec))
             {
-                DataTable myTable;
                 Encoding enc = GetEncoding;
-                if (    !InitializeDataTableFromCCTable(m_strConverterSpec, enc, WordBoundaryDelimiter, out myTable)
+                if (    !InitializeDataTableFromCCTable(m_strConverterSpec, enc, WordBoundaryDelimiter, out DataTable myTable)
                     ||  (myTable.Rows.Count > 0))
                 {
                     return; // don't query for a record if there are already spelling corrections in the file
@@ -206,7 +193,7 @@ public void QueryForSpellingCorrectionIfTableEmpty(string strBadWord)
             }
             else
             {
-                LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace, null, !this.m_bLegacy);
+                LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace);
             }
 
             QueryAndAppend(strBadWord);
@@ -226,7 +213,7 @@ protected void QueryAndAppend(string strBadWord)
                 Encoding enc = GetEncoding;
 
                 // get a stream writer for these encoding and append
-                StreamWriter sw = new StreamWriter(m_strConverterSpec, true, enc);
+                var sw = new StreamWriter(m_strConverterSpec, true, enc);
                 sw.WriteLine(FormatSubstitutionRule(aQuery.FindWhat, aQuery.ReplaceWith, WordBoundaryDelimiter, strBadWord));
                 sw.Flush();
                 sw.Close();
@@ -259,7 +246,7 @@ public void AssignCorrectSpelling(string strBadWord)
             }
             else
             {
-                LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace, null, !this.m_bLegacy);
+                LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace);
             }
 
             QueryAndAppend(strBadWord);
@@ -288,7 +275,7 @@ public void AssignCorrectSpelling(string strBadWord, string strReplacement)
             }
             else
             {
-                LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace, null, !this.m_bLegacy);
+                LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace);
             }
 
             // if it was legacy encoded, then we need to convert the data to narrow using
@@ -296,7 +283,7 @@ public void AssignCorrectSpelling(string strBadWord, string strReplacement)
             Encoding enc = GetEncoding;
 
             // get a stream writer for this encoding and append
-            StreamWriter sw = new StreamWriter(m_strConverterSpec, true, enc);
+            var sw = new StreamWriter(m_strConverterSpec, true, enc);
             sw.WriteLine(FormatSubstitutionRule(strBadWord, strReplacement, WordBoundaryDelimiter, strBadWord));
             sw.Flush();
             sw.Close();
@@ -311,9 +298,8 @@ public void FindReplacementRule(string strWord)
                 CleanWord(ref strWord);
 
                 // Open the CC table that has the mappings and put them in a DataTable.
-                DataTable myTable;
                 Encoding enc = GetEncoding;
-                if (InitializeDataTableFromCCTable(m_strConverterSpec, enc, WordBoundaryDelimiter, out myTable))
+                if (InitializeDataTableFromCCTable(m_strConverterSpec, enc, WordBoundaryDelimiter, out DataTable myTable))
                 {
                     // temporary filename for temporary CC tables (to check portions of the file at a time)
                     string strTempName = Path.GetTempFileName();
@@ -413,7 +399,6 @@ public void FindReplacementRule(string strWord)
                         if (bRewrite)
                         {
                             // write the newly updated DataTable
-                            LoginSF.ReWriteCCTableHeader(m_strConverterSpec, PunctuationAndWhiteSpace, enc);
                             AppendCCTableFromDataTable(m_strConverterSpec, enc, WordBoundaryDelimiter, PunctuationAndWhiteSpace, myTable);
                         }
                     }
@@ -429,20 +414,19 @@ public void EditSpellingFixes()
                 // Open the CC table that has the mappings and put them in a DataTable.
                 if (!File.Exists(m_strConverterSpec))
                 {
-                    LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace, null, !this.m_bLegacy);
+                    LoginSF.CreateCCTable(m_strConverterSpec, SpellFixerEncConverterName, PunctuationAndWhiteSpace);
                 }
 
                 // if it was legacy encoded, then we need to convert the data to narrow using
                 //  the code page the user specified (or we got out of the repository)
                 Encoding enc = GetEncoding;
-                DataTable myTable;
-                if (InitializeDataTableFromCCTable(m_strConverterSpec, enc, WordBoundaryDelimiter, out myTable))
+                if (InitializeDataTableFromCCTable(m_strConverterSpec, enc, WordBoundaryDelimiter, out DataTable myTable))
                 {
                     // now put up an editable grid with this data.
                     DialogResult res = DialogResult.Cancel;
                     try
                     {
-                        ViewBadGoodPairsDlg dlg = new ViewBadGoodPairsDlg(myTable, m_font, WordBoundaryDelimiter, IsRightToLeft);
+                        var dlg = new ViewBadGoodPairsDlg(myTable, m_font, WordBoundaryDelimiter, IsRightToLeft);
                         res = dlg.ShowDialog();
                     }
 #if DEBUG
@@ -456,7 +440,6 @@ public void EditSpellingFixes()
 
                     if (res == DialogResult.OK)
                     {
-                        LoginSF.ReWriteCCTableHeader(m_strConverterSpec, PunctuationAndWhiteSpace, enc);
                         AppendCCTableFromDataTable(m_strConverterSpec, enc, WordBoundaryDelimiter, PunctuationAndWhiteSpace, myTable);
                     }
                 }
@@ -467,19 +450,7 @@ protected Encoding GetEncoding
         {
             get
             {
-                // if it was legacy encoded, then we need to convert the data to narrow using
-                //  the code page the user specified (or we got out of the repository)
-                Encoding enc = null;
-                if (m_bLegacy)
-                {
-                    int cp = m_cp;
-                    if (m_cp == EncConverters.cnSymbolFontCodePage)
-                        cp = EncConverters.cnIso8859_1CodePage;
-                    enc = Encoding.GetEncoding(cp);
-                }
-                else
-                    enc = new UTF8Encoding();
-
+                var enc = new UTF8Encoding();
                 return enc;
             }
         }
@@ -488,7 +459,7 @@ protected static DataTable GetDataTable
         {
             get
             {
-                DataTable myTable = new DataTable("SpellingFixesList");
+                var myTable = new DataTable("SpellingFixesList");
                 myTable.Columns.Add(new DataColumn(strColumnLhs, typeof(string)));
                 myTable.Columns.Add(new DataColumn(strColumnRhs, typeof(string)));
                 myTable.Columns.Add(new DataColumn(strColumnCmt, typeof(string)));
@@ -502,8 +473,8 @@ private static void CleanWord(ref string str)
             // then strip off invalid chars (that sometimes come in from Word)
             if (str != null)
             {
-                int nIndexBadChar = 0;
                 char[] aBadChars = new char[] { '\r', '\n' };
+                int nIndexBadChar;
                 while ((nIndexBadChar = str.IndexOfAny(aBadChars)) != -1)
                     str = str.Remove(nIndexBadChar, 1);
             }
@@ -527,7 +498,7 @@ private bool ChaChaChaChaChanges(IEncConverter aEC, string strFileName, string s
         {
             string strDummy = null;
             int lProcessType = (int)SpellingFixerEC.SFProcessType;
-            ConvType eConvType = (m_bLegacy) ? ConvType.Legacy_to_Legacy : ConvType.Unicode_to_Unicode;
+            var eConvType = ConvType.Unicode_to_Unicode;
             aEC.Initialize("dummyname", strFileName, ref strDummy, ref strDummy, ref eConvType, ref lProcessType, 0, 0, true);
             return (aEC.Convert(strWord) != strWord);
         }
@@ -538,20 +509,6 @@ private bool ChaChaChaChaChanges(IEncConverter aEC, string strFileName, Encoding
             return ChaChaChaChaChanges(aEC, strFileName, strWord);
         }
 
-        private void GetPortionOfTable(DataTable myTable, int nIndex, int nLength, ref DataTable tblTestingRules)
-        {
-            tblTestingRules.Clear();
-            for (int i = nIndex; (nLength-- > 0); nIndex++)
-            {
-                DataRow row = myTable.Rows[nIndex];
-                DataRow newRow = tblTestingRules.NewRow();
-                newRow[strColumnLhs] = row[strColumnLhs];
-                newRow[strColumnRhs] = row[strColumnRhs];
-                newRow[strColumnCmt] = row[strColumnCmt];
-                tblTestingRules.Rows.Add(newRow);
-            }
-        }
-
         internal static string FormatSubstitutionRule(string strBad, string strGood, string strWordBoundaryDelimiter, string strCommentWord)
         {
             // if the user indicated a word boundary condition (i.e. #pete, ete#, or #pete#)
@@ -603,14 +560,18 @@ internal static void AppendCCTableFromDataTable
             string strConverterSpec,
             Encoding enc,
             string strWordBoundaryDelimiter,
-            string strPunctuationAndWhiteSpace,
+            string strNonWordCharacters,
             DataTable myTable
             )
         {
+            int rowCount = myTable.Rows.Count;
+
+            LoginSF.ReWriteCCTableHeader(strConverterSpec, strNonWordCharacters, enc, rowCount > 0);
+
             // get a stream writer to write the new pairs
-            StreamWriter sw = new StreamWriter(strConverterSpec, true, enc);
+            var sw = new StreamWriter(strConverterSpec, true, enc);
 
-            AppendCCTableFromDataTable(sw, strWordBoundaryDelimiter, strPunctuationAndWhiteSpace, myTable, 0, myTable.Rows.Count);
+            AppendCCTableFromDataTable(sw, strWordBoundaryDelimiter, myTable, 0, rowCount);
 
             sw.Flush();
             sw.Close();
@@ -621,9 +582,9 @@ internal void WriteCCTableFromDataTable(string strFilename, Encoding enc, DataTa
             if (File.Exists(strFilename))
                 File.Delete(strFilename);
 
-            StreamWriter sw = new StreamWriter(strFilename, false, enc);
-            LoginSF.CreateCCTable(sw, SpellFixerEncConverterName, PunctuationAndWhiteSpace, null, !m_bLegacy);
-            AppendCCTableFromDataTable(sw, WordBoundaryDelimiter, PunctuationAndWhiteSpace, tbl, nTableIndex, nNumRows);
+            var sw = new StreamWriter(strFilename, false, enc);
+            LoginSF.CreateCCTable(sw, SpellFixerEncConverterName, PunctuationAndWhiteSpace);
+            AppendCCTableFromDataTable(sw, WordBoundaryDelimiter, tbl, nTableIndex, nNumRows);
             sw.Flush();
             sw.Close();
         }
@@ -632,7 +593,6 @@ internal static void AppendCCTableFromDataTable
             (
             StreamWriter sw,
             string strWordBoundaryDelimiter,
-            string strPunctuationAndWhiteSpace,
             DataTable myTable,
             int nTableIndex,
             int nNumRows
@@ -659,10 +619,10 @@ int nNumRows
         internal static StreamReader InitReaderPastHeader(string strConverterSpec, Encoding enc)
         {
             // get a stream writer for these encoding and append
-            StreamReader sr = new StreamReader(strConverterSpec, enc);
+            var sr = new StreamReader(strConverterSpec, enc);
 
             // skip past the header lines
-            string line = null;
+            string line;
             do
             {
                 line = sr.ReadLine();
@@ -670,7 +630,7 @@ internal static StreamReader InitReaderPastHeader(string strConverterSpec, Encod
                 if (line == null)
                     throw new ExternalException(String.Format("The substitution mapping file (i.e. '{0}') appears to be from a previous version of SpellFixer. Create a new project and manually copy over the spelling substitutions from the existing mapping file to the new project mapping file using a text editor like Notepad", strConverterSpec));
 
-            } while (line != LoginSF.cstrLastHeaderLine);
+            } while (line != LoginSF.CctableLastHeaderLine);
 
             return sr;
         }
@@ -687,7 +647,7 @@ out DataTable myTable
             StreamReader sr = InitReaderPastHeader(strConverterSpec, enc);
 
             myTable = GetDataTable;
-            string line = null;
+            string line;
             while ((line = sr.ReadLine()) != null)
             {
                 string strLhs = null;
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index 237fd190..2e639bd9 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -141,12 +141,21 @@
     </Reference>
   </ItemGroup>
   <ItemGroup>
+    <Compile Include="AddNewProjectForm.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="AddNewProjectForm.Designer.cs">
+      <DependentUpon>AddNewProjectForm.cs</DependentUpon>
+    </Compile>
     <Compile Include="AssemblyInfo.cs">
       <SubType>Code</SubType>
     </Compile>
     <Compile Include="LoginSF.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="LoginSF.Designer.cs">
+      <DependentUpon>LoginSF.cs</DependentUpon>
+    </Compile>
     <Compile Include="Properties\Resources.Designer.cs">
       <AutoGen>True</AutoGen>
       <DesignTime>True</DesignTime>
@@ -166,6 +175,9 @@
     <Compile Include="ViewBadGoodPairsDlg.designer.cs">
       <DependentUpon>ViewBadGoodPairsDlg.cs</DependentUpon>
     </Compile>
+    <EmbeddedResource Include="AddNewProjectForm.resx">
+      <DependentUpon>AddNewProjectForm.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="LoginSF.resx">
       <DependentUpon>LoginSF.cs</DependentUpon>
       <SubType>Designer</SubType>
diff --git a/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs b/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs
index ef0fcc82..6245e0ae 100644
--- a/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs
+++ b/src/SpellingFixerEC/ViewBadGoodPairsDlg.cs
@@ -22,8 +22,8 @@ internal partial class ViewBadGoodPairsDlg : Form
 
         const int cnBadSpelling = 0;
         const int cnGoodSpelling = 1;
-        private string _wordBoundaryDelimiter;
-        private bool _isRightToLeft;
+        private readonly string _wordBoundaryDelimiter;
+        private readonly bool _isRightToLeft;
 
         internal ViewBadGoodPairsDlg(DataTable myTable, Font font, string wordBoundaryDelimiter, bool isRightToLeft)
         {
@@ -99,24 +99,24 @@ protected bool EditingCscBad2GoodList
         }
 #endif
 
-		private void buttonOK_Click(object sender, EventArgs e)
+		private void ButtonOK_Click(object sender, EventArgs e)
         {
             DialogResult = DialogResult.OK;
             this.Close();
         }
 
-        private void buttonCancel_Click(object sender, EventArgs e)
+        private void ButtonCancel_Click(object sender, EventArgs e)
         {
             DialogResult = DialogResult.Cancel;
             this.Close();
         }
 
-		private void dataGridView_UserAddedRow(object sender, DataGridViewRowEventArgs e)
+		private void DataGridView_UserAddedRow(object sender, DataGridViewRowEventArgs e)
 		{
 			buttonOK.Enabled = true;
 		}
 
-        private void dataGridView_UserDeletedRow(object sender, DataGridViewRowEventArgs e)
+        private void DataGridView_UserDeletedRow(object sender, DataGridViewRowEventArgs e)
         {
             DeletingRow(e.Row);
         }
@@ -158,7 +158,7 @@ protected bool DeletingRow(DataGridViewRow theRow)
         protected string m_strBadForm = null;
         protected string m_strGoodForm = null;
         protected string m_strWordBeingEdited = null;
-        private void dataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
+        private void DataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
         {
             DataGridViewRow theRow = dataGridView.Rows[e.RowIndex];
             if (theRow.IsNewRow)
@@ -172,7 +172,7 @@ private void dataGridView_CellBeginEdit(object sender, DataGridViewCellCancelEve
             m_strWordBeingEdited = (e.ColumnIndex == cnBadSpelling) ? m_strBadForm : m_strGoodForm;
         }
 
-        private void dataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
+        private void DataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
         {
             DataGridViewRow theRow = dataGridView.Rows[e.RowIndex];
             string strWordEdited = (string)theRow.Cells[e.ColumnIndex].Value;
@@ -180,218 +180,12 @@ private void dataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e
                 return;
 
             buttonOK.Enabled = true;
-
-#if !TurnOffSF30
-            // the word was changed... if we're editing the dictionary...
-            if (EditingDictionary)
-            {
-                // if this is a new record...
-                if (String.IsNullOrEmpty(m_strWordBeingEdited))
-                    if (!AddToWhiteList(strWordEdited))  // (i.e. so add)
-                    {
-                        // means we didn't add it (because it was already there)
-                        System.Diagnostics.Debug.Assert(m_mapWhiteList.ContainsKey(strWordEdited));
-
-                        // in that case, don't add this new value, but just select and display the existing value.
-                        theRow.Cells[cnGoodSpelling].Value = null;
-                    }
-
-                // ... then we also have to update any entries in the bad2good list that had
-                //  the original good word in them.
-                DialogResult res = RetaskBad2GoodList(m_strWordBeingEdited, strWordEdited);
-
-                // either if they said 'Yes' or there weren't others...
-                if (res != DialogResult.Cancel)
-                {
-                    // update the current value in the known good list with the new value
-                    RetaskWhiteListSfw(m_strWordBeingEdited, strWordEdited);
-                }
-
-                // if it happened to have been 'No', then we have to have the old value as well
-                if (res == DialogResult.No)
-                {
-                    if (AddToWhiteList(m_strWordBeingEdited))  // (i.e. so add)
-                        dataGridView.Rows.Add(new object[] { null, m_strWordBeingEdited });
-                }
-
-                // the update to the WordsToCheck will happen by the caller after we're totally done
-            }
-            else if (EditingCscBad2GoodList)
-            {
-                DataGridViewCell theBadCell = theRow.Cells[cnBadSpelling];
-                if (e.ColumnIndex == cnGoodSpelling)
-                {
-                    string strBadValue = (string)theBadCell.Value;
-                    if (String.IsNullOrEmpty(strBadValue))
-                        theRow.Cells[cnGoodSpelling].Value = strWordEdited;
-                    else
-                    {
-                        // if this is newly edited (i.e. word being edited is null), then pretend the bad value is
-                        //  new too (or it looks like it's already there)
-                        GoodValueEdited(theRow, strBadValue, strBadValue, m_strWordBeingEdited, strWordEdited);
-                    }
-                }
-                else    // edited the bad spelling cell
-                {
-                    System.Diagnostics.Debug.Assert(e.ColumnIndex == cnBadSpelling);
-                    if (String.IsNullOrEmpty(m_strWordBeingEdited) && (theRow.Cells[cnGoodSpelling].Value == null))
-                        // means that this is the new row, so with only a bad value, we have nothing
-                        theRow.Cells[cnBadSpelling].Value = strWordEdited;
-                    else
-                        BadValueOnlyEdited(theBadCell, m_strWordBeingEdited, strWordEdited, (string)theRow.Cells[cnGoodSpelling].Value);
-                }
-            }
-#endif
-        }
-
-        private void UpdateGridGoodValues(string strOldValue, string strNewValue)
-        {
-            foreach (DataGridViewRow aRow in dataGridView.Rows)
-            {
-                DataGridViewCell theGoodCell = aRow.Cells[cnGoodSpelling];
-                if (strOldValue == (string)theGoodCell.Value)
-                    theGoodCell.Value = strNewValue;
-            }
-        }
-
-#if !TurnOffSF30
-        private DialogResult RetaskBad2GoodList(string strOldValue, string strNewValue)
-        {
-            // ... then we also have to update any entries in the bad2good list that had
-            //  the original good word in them.
-            DialogResult res = DialogResult.None;
-            if (m_mapBad2Good.ContainsValue(strOldValue))
-            {
-                bool bDeleting = String.IsNullOrEmpty(strNewValue);
-                string strMsg = String.Format("The word you just {1}, '{2}', is in other records in the bad-to-good list.{0}Would you like to have those record(s) {1} as well?",
-                    Environment.NewLine, (bDeleting) ? "deleted" : "changed", strOldValue);
-
-                if (!bDeleting)
-                    strMsg += String.Format(" (i.e. to '{0}')", strNewValue);
-
-                res = MessageBox.Show(strMsg, CscProject.cstrCaption, MessageBoxButtons.YesNoCancel);
-
-                if (res == DialogResult.Yes)
-                {
-                    while (m_mapBad2Good.ContainsValue(strOldValue))
-                    {
-                        foreach (KeyValuePair<string, string> kvp in m_mapBad2Good)
-                        {
-                            if (strOldValue == kvp.Value)
-                            {
-                                m_mapBad2Good.Remove(kvp.Key);
-                                if (!bDeleting)
-                                    m_mapBad2Good.Add(kvp.Key, strNewValue);
-                                break;  // can't modify the collection without restarting the enumerator
-                            }
-                        }
-                    }
-                }
-            }
-
-            return res;
-        }
-
-        private void RetaskWhiteListSfw(string strKey, string strNewValue)
-        {
-            SpellFixerWord sfw = m_mapWhiteList[strKey];
-            m_mapWhiteList.Remove(strKey);
-            if (!m_mapWhiteList.ContainsKey(strNewValue))
-            {
-                sfw.Value = strNewValue;
-                sfw.InitializeNonStaticData(m_project);
-                m_mapWhiteList.Add(sfw);
-            }
-        }
-
-        private bool AddToWhiteList(string strValue)
-        {
-            if (!m_mapWhiteList.ContainsKey(strValue))
-            {
-                SpellFixerWord sfw = m_project.GetNewSpellFixerWord(strValue, null);
-                m_mapWhiteList.Add(sfw);
-                return true;
-            }
-            return false;
-        }
-
-        protected void GoodValueEdited(DataGridViewRow theRow, string strBadValue, string strNewBadValue, 
-            string strGoodValue, string strNewGoodValue)
-        {
-            // if the new record is already in there, then just select and display the existing value
-            if (strBadValue != strNewBadValue)
-                foreach (DataGridViewRow aRow in dataGridView.Rows)
-                    if (strNewBadValue == (string)aRow.Cells[cnBadSpelling].Value)
-                    {
-                        aRow.Selected = true;
-                        dataGridView.FirstDisplayedScrollingRowIndex = aRow.Index;
-                        System.Diagnostics.Debug.Assert(m_mapBad2Good.ContainsKey(strNewBadValue) && m_mapBad2Good[strNewBadValue] == strNewGoodValue);
-                        return;
-                    }
-
-            // remove the one we're editing (so we don't find it below causing us to query the user 
-            //  about *that* one)
-            if (!String.IsNullOrEmpty(strBadValue))
-                m_mapBad2Good.Remove(strBadValue);
-
-            // then see if any other records have the same 'good form' and ask the user if they'd like us
-            //  to change those also
-            DialogResult res = RetaskBad2GoodList(strGoodValue, strNewGoodValue);
-            if (res == DialogResult.Yes)
-                UpdateGridGoodValues(strGoodValue, strNewGoodValue);
-
-            // now update the row being edited with the new data
-            theRow.Cells[cnGoodSpelling].Value = strNewGoodValue;
-            if (strNewBadValue != strBadValue)
-                theRow.Cells[cnBadSpelling].Value = strNewBadValue;
-
-            // now add the new data to the collection
-            m_mapBad2Good.Add(strNewBadValue, strNewGoodValue);
-
-            // also update the known good list with the new good form (if we're changing them all)
-            System.Diagnostics.Debug.Assert(String.IsNullOrEmpty(strGoodValue) || m_mapWhiteList.ContainsKey(strGoodValue));
-            if (!String.IsNullOrEmpty(strGoodValue)
-                && m_mapWhiteList.ContainsKey(strGoodValue)
-                && (res != DialogResult.No))   // this means the original good form is still there for other records
-            {
-                RetaskWhiteListSfw(strGoodValue, strNewGoodValue);
-            }
-            else if (!m_mapWhiteList.ContainsKey(strNewGoodValue))
-                AddToWhiteList(strNewGoodValue);
-
-            buttonOK.Enabled = true;
-            // the update to the WordsToCheck will happen by the caller after we're totally done
-        }
-
-        protected void BadValueOnlyEdited(DataGridViewCell theBadCell, string strBadValue, string strNewBadValue,
-            string strNewGoodValue)
-        {
-            // update the row value
-            theBadCell.Value = strNewBadValue;
-
-            // and update the collection
-            if (!String.IsNullOrEmpty(strBadValue))
-                m_mapBad2Good.Remove(strBadValue);
-
-            m_mapBad2Good.Add(strNewBadValue, strNewGoodValue);
-
-            // since we know this can't be a good word (or it wouldn't be the 'bad' form), remove it from the white list if present
-            if (m_mapWhiteList.ContainsKey(strNewBadValue))
-                m_mapWhiteList.Remove(strNewBadValue);
-
-            buttonOK.Enabled = true;
         }
 
-#else   // not in SF30
-#endif
-
-        private void dataGridView_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e)
+        private void DataGridView_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e)
         {
             if ((e.RowIndex < 0) || (e.RowIndex >= dataGridView.Rows.Count)
                 || (e.ColumnIndex < 0) || (e.ColumnIndex >= dataGridView.Columns.Count)
-#if !TurnOffSF30
-                || (EditingDictionary)
-#endif
                 || (e.Button != MouseButtons.Right))
                 return;
 
@@ -516,7 +310,7 @@ protected void ProcessEditRow(DataGridViewRow theRow)
             }
         }
 
-        private void dataGridView_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
+        private void DataGridView_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
         {
             System.Diagnostics.Trace.WriteLine(String.Format("PreviewKeyDown: sender: {3}, KeyValue: {0}, KeyCode: {1}, KeyData: {2}",
                 e.KeyValue, e.KeyCode, e.KeyData, sender.ToString()));
@@ -538,7 +332,7 @@ private void dataGridView_PreviewKeyDown(object sender, PreviewKeyDownEventArgs
             }
         }
 
-        private void buttonAddCorrection_Click(object sender, EventArgs e)
+        private void ButtonAddCorrection_Click(object sender, EventArgs e)
         {
             DataTable myTable = (DataTable)dataGridView.DataSource;
             myTable.Rows.Add(new object[] { "incorect", "incorrect" });
diff --git a/src/SpellingFixerEC/ViewBadGoodPairsDlg.designer.cs b/src/SpellingFixerEC/ViewBadGoodPairsDlg.designer.cs
index dd730121..76c9d7c3 100644
--- a/src/SpellingFixerEC/ViewBadGoodPairsDlg.designer.cs
+++ b/src/SpellingFixerEC/ViewBadGoodPairsDlg.designer.cs
@@ -32,12 +32,12 @@ private void InitializeComponent()
         {
             this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
             this.dataGridView = new System.Windows.Forms.DataGridView();
-            this.ColumnBadSpelling = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.ColumnGoodSpelling = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.buttonOK = new System.Windows.Forms.Button();
             this.buttonCancel = new System.Windows.Forms.Button();
-            this.helpProvider = new System.Windows.Forms.HelpProvider();
             this.buttonAddCorrection = new System.Windows.Forms.Button();
+            this.helpProvider = new System.Windows.Forms.HelpProvider();
+            this.ColumnBadSpelling = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ColumnGoodSpelling = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.tableLayoutPanel.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit();
             this.SuspendLayout();
@@ -76,55 +76,55 @@ private void InitializeComponent()
             this.dataGridView.RowHeadersWidth = 26;
             this.dataGridView.Size = new System.Drawing.Size(375, 293);
             this.dataGridView.TabIndex = 0;
-            this.dataGridView.UserAddedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.dataGridView_UserAddedRow);
-            this.dataGridView.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.dataGridView_CellBeginEdit);
-            this.dataGridView.PreviewKeyDown += new System.Windows.Forms.PreviewKeyDownEventHandler(this.dataGridView_PreviewKeyDown);
-            this.dataGridView.CellMouseUp += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.dataGridView_CellMouseUp);
-            this.dataGridView.UserDeletedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.dataGridView_UserDeletedRow);
-            this.dataGridView.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView_CellEndEdit);
-            // 
-            // ColumnBadSpelling
-            // 
-            this.ColumnBadSpelling.HeaderText = "Bad Form";
-            this.ColumnBadSpelling.Name = "ColumnBadSpelling";
-            // 
-            // ColumnGoodSpelling
-            // 
-            this.ColumnGoodSpelling.HeaderText = "Good Form";
-            this.ColumnGoodSpelling.Name = "ColumnGoodSpelling";
+            this.dataGridView.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.DataGridView_CellBeginEdit);
+            this.dataGridView.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.DataGridView_CellEndEdit);
+            this.dataGridView.CellMouseUp += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.DataGridView_CellMouseUp);
+            this.dataGridView.UserAddedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.DataGridView_UserAddedRow);
+            this.dataGridView.UserDeletedRow += new System.Windows.Forms.DataGridViewRowEventHandler(this.DataGridView_UserDeletedRow);
+            this.dataGridView.PreviewKeyDown += new System.Windows.Forms.PreviewKeyDownEventHandler(this.DataGridView_PreviewKeyDown);
             // 
             // buttonOK
             // 
             this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.buttonOK.Location = new System.Drawing.Point(48, 302);
+            this.buttonOK.Location = new System.Drawing.Point(49, 302);
             this.buttonOK.Name = "buttonOK";
             this.buttonOK.Size = new System.Drawing.Size(75, 23);
             this.buttonOK.TabIndex = 1;
             this.buttonOK.Text = "OK";
             this.buttonOK.UseVisualStyleBackColor = true;
-            this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click);
+            this.buttonOK.Click += new System.EventHandler(this.ButtonOK_Click);
             // 
             // buttonCancel
             // 
             this.buttonCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.buttonCancel.Location = new System.Drawing.Point(129, 302);
+            this.buttonCancel.Location = new System.Drawing.Point(130, 302);
             this.buttonCancel.Name = "buttonCancel";
             this.buttonCancel.Size = new System.Drawing.Size(75, 23);
             this.buttonCancel.TabIndex = 2;
             this.buttonCancel.Text = "Cancel";
             this.buttonCancel.UseVisualStyleBackColor = true;
-            this.buttonCancel.Click += new System.EventHandler(this.buttonCancel_Click);
+            this.buttonCancel.Click += new System.EventHandler(this.ButtonCancel_Click);
             // 
             // buttonAddCorrection
             // 
-            this.buttonAddCorrection.Location = new System.Drawing.Point(255, 302);
+            this.buttonAddCorrection.Location = new System.Drawing.Point(257, 302);
             this.buttonAddCorrection.Name = "buttonAddCorrection";
             this.buttonAddCorrection.Size = new System.Drawing.Size(114, 23);
             this.buttonAddCorrection.TabIndex = 3;
-            this.buttonAddCorrection.Text = "&Add Correction";
+            this.buttonAddCorrection.Text = "&Add Substitution";
             this.buttonAddCorrection.UseVisualStyleBackColor = true;
-            this.buttonAddCorrection.Click += new System.EventHandler(this.buttonAddCorrection_Click);
+            this.buttonAddCorrection.Click += new System.EventHandler(this.ButtonAddCorrection_Click);
+            // 
+            // ColumnBadSpelling
+            // 
+            this.ColumnBadSpelling.HeaderText = "Find What";
+            this.ColumnBadSpelling.Name = "ColumnBadSpelling";
+            // 
+            // ColumnGoodSpelling
+            // 
+            this.ColumnGoodSpelling.HeaderText = "Replace With";
+            this.ColumnGoodSpelling.Name = "ColumnGoodSpelling";
             // 
             // ViewBadGoodPairsDlg
             // 
@@ -138,7 +138,7 @@ private void InitializeComponent()
             this.MaximizeBox = false;
             this.MinimizeBox = false;
             this.Name = "ViewBadGoodPairsDlg";
-            this.Text = "Edit Bad-Good Pairs";
+            this.Text = "Edit Find-Replace Pairs";
             this.tableLayoutPanel.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.dataGridView)).EndInit();
             this.ResumeLayout(false);
@@ -149,11 +149,11 @@ private void InitializeComponent()
 
         private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
         private System.Windows.Forms.DataGridView dataGridView;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ColumnBadSpelling;
-        private System.Windows.Forms.DataGridViewTextBoxColumn ColumnGoodSpelling;
         private System.Windows.Forms.Button buttonOK;
         private System.Windows.Forms.Button buttonCancel;
         private System.Windows.Forms.HelpProvider helpProvider;
         private System.Windows.Forms.Button buttonAddCorrection;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ColumnBadSpelling;
+        private System.Windows.Forms.DataGridViewTextBoxColumn ColumnGoodSpelling;
     }
 }
\ No newline at end of file
diff --git a/src/SpellingFixerEC/ViewBadGoodPairsDlg.resx b/src/SpellingFixerEC/ViewBadGoodPairsDlg.resx
index 615b2736..b780aad6 100644
--- a/src/SpellingFixerEC/ViewBadGoodPairsDlg.resx
+++ b/src/SpellingFixerEC/ViewBadGoodPairsDlg.resx
@@ -112,24 +112,18 @@
     <value>2.0</value>
   </resheader>
   <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <metadata name="ColumnBadSpelling.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+  <metadata name="ColumnBadSpelling.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
-  <metadata name="ColumnGoodSpelling.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+  <metadata name="ColumnGoodSpelling.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
-  <metadata name="ColumnBadSpelling.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="ColumnGoodSpelling.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
-    <value>True</value>
-  </metadata>
-  <metadata name="helpProvider.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+  <metadata name="helpProvider.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>17, 17</value>
   </metadata>
 </root>
\ No newline at end of file

From 3212089079a295e48fb968ac4d906694734de87e Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 11 Mar 2023 06:03:14 -0600
Subject: [PATCH 20/71] if the Paratext BT Helper plugin is installed, install
 SpellFixer (aka. FindReplace, which is now implicitly available in the plugin
 via the Add Substitution button and related context menu) and SetPath, so the
 cc engine (used by SpellFixer) is reachable

---
 Installer/SEC Setup 64bit/EcFeatures.wxs | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Installer/SEC Setup 64bit/EcFeatures.wxs b/Installer/SEC Setup 64bit/EcFeatures.wxs
index 76779d58..c7b24889 100644
--- a/Installer/SEC Setup 64bit/EcFeatures.wxs	
+++ b/Installer/SEC Setup 64bit/EcFeatures.wxs	
@@ -104,6 +104,8 @@
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="ParatextBackTranslationHelperPlugin"/>
         <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
+        <MergeRef Id="SetPath"/>
       </Feature>
     </Feature>
     <Feature Id="Transduction_Engines" Title="Transduction Engines" Description="Expand this node to select or deselect individual transduction engines" Level="3" AllowAdvertise="no">

From 2d71d8af7552106b32dae733657eafe04fa62db6 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 11 Mar 2023 07:51:47 -0600
Subject: [PATCH 21/71] add scaffolding for RegisterForNotification with the
 BTHelperControl so we can get updates to the TargetTranslation text box (and
 warn user about discrepancies in the number of lines translated)

---
 .../BackTranslationHelperForm.cs              | 68 +++++++++++++++----
 1 file changed, 54 insertions(+), 14 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index de7d01ac..215771d1 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -58,6 +58,16 @@ public partial class BackTranslationHelperForm : Form, IBackTranslationHelperDat
         /// </summary>
         private Dictionary<string, List<IUSFMToken>> UsfmTokensSource { get; set; } = new Dictionary<string, List<IUSFMToken>>();
 
+        /// <summary>
+        /// The number of text lines in the source data (i.e. the number of IUSFMTextTokens in the verse(s))
+        /// </summary>
+        private int SourceDataLineCount { get; set; }
+
+        /// <summary>
+        /// This contains the list of marker tokens immediately preceding the text tokens in the source data
+        /// </summary>
+        private List<IUSFMMarkerToken> TextTokenMarkersSource { get; set; } = new List<IUSFMMarkerToken>();
+
         /// <summary>
         /// this contains the tokens from the target project, for all the verses in the current chapter (we need the 
         /// whole chapter,because we have to Put the entire chapter when we go to write it.
@@ -85,12 +95,26 @@ public BackTranslationHelperForm(IPluginHost host, ParatextBackTranslationHelper
 
             // this form is the implementation of the way to get get data
             backTranslationHelperCtrl.BackTranslationHelperDataSource = this;
+            backTranslationHelperCtrl.RegisterForNotification(BackTranslationHelperCtrl.SubscribeableEventKeyTargetBackTranslationTextChanged,
+                                                              TargetBackTranslationTextChanged);
 
             _host.VerseRefChanged += Host_VerseRefChanged;
             _projectSource.ScriptureDataChanged += ScriptureDataChangedHandlerSource;
             _projectTarget.ScriptureDataChanged += ScriptureDataChangedHandlerTarget;
         }
 
+        private void TargetBackTranslationTextChanged(string value)
+        {
+            var translatedCount = GetTranslatedLines(value).Count;
+            if (SourceDataLineCount != translatedCount)
+            {
+                // TODO: add a tooltip to show how the currently translated lines will be put into the source project markers
+                textBoxStatus.Text = $"There are currently {translatedCount} lines of text in the Target Translation box vs. {SourceDataLineCount} text lines in the source verse (one for each of these markers: {String.Join(",", TextTokenMarkersSource.Select(m => $"\\{m.Marker}"))})";
+            }
+            else
+                textBoxStatus.Clear();
+        }
+
         private static string GetFrameText(IProject projectSource, IProject projectTarget, IVerseRef versesReference)
         {
             return String.Format(FrameTextFormat, GetProjectName(projectSource, projectTarget), versesReference);
@@ -245,7 +269,11 @@ private string CurrentSourceData
                                  .Where(t => t.IsPublishableVernacular && IsMatchingVerse(t.VerseRef, _verseReference))
                                  .ToDictionary(ta => ta, ta => ta.VerseRef);
 
+                TextTokenMarkersSource = GetTextTokenMarkers(tokens, data.Keys.ToList());
+
                 var textValues = data.Select(t => t.Key.Text);
+                SourceDataLineCount = textValues.Count();
+
                 var sourceString = string.Join(Environment.NewLine, textValues);
 
                 // set the verse reference to the last of a combined set of verses (which we can only get from the USFM markers)
@@ -258,6 +286,24 @@ private string CurrentSourceData
             }
         }
 
+        private List<IUSFMMarkerToken> GetTextTokenMarkers(List<IUSFMToken> tokens, List<IUSFMTextToken> textTokens)
+        {
+            IUSFMMarkerToken lastMarkerToken = null;
+            var textTokenMarkers = new List<IUSFMMarkerToken>();
+            foreach (var token in tokens)
+            {
+                if (token is IUSFMMarkerToken)
+                {
+                    lastMarkerToken = token as IUSFMMarkerToken;
+                }
+                else if (textTokens.Contains(token) && (lastMarkerToken != null))
+                {
+                    textTokenMarkers.Add(lastMarkerToken);
+                }
+            }
+            return textTokenMarkers;
+        }
+
         private string CurrentTargetData
         {
             get
@@ -479,8 +525,7 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
             //      ... in which case, we put one line of each translated version into one of the text tokens
             //  3) there are more lines of text translated than there were in Paratext
             //      ... in which case, we'll duplicate the last text token and push the extra lines in it
-            var translatedValues = text?.Split(new[] { Environment.NewLine }, StringSplitOptions.None)
-                                        .ToList();
+            var translatedValues = GetTranslatedLines(text);
             if ((translatedValues == null) || !translatedValues.Any())    // nothing to do
                 return null;
 
@@ -494,7 +539,7 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
             //  to have them be requeried
             var keyBookChapterVerse = GetBookChapterVerseKey(verseReference);
             if (!usfmTokensSource.TryGetValue(keyBookChapterVerse, out List<IUSFMToken> tokensSource))
-                    return null;
+                return null;
 
             // NB: for reasons that are not clear, I was trying to maintain the markers that were in the target project 
             //  and put the translated lines in those... but the entire point of this plugin is to make a back translation
@@ -515,9 +560,9 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
             //  anyway, which will be replaced w/ the translated text below
             var keyBookChapterVerses = GetBookChapterVerseKey(versesReference);
             var tokensTarget = tokensSource;
-                if (vrefTokensTarget.ContainsKey(keyBookChapterVerse))
+            if (vrefTokensTarget.ContainsKey(keyBookChapterVerse))
                 vrefTokensTarget[keyBookChapterVerse] = tokensSource;
-                else
+            else
                 vrefTokensTarget.Add(keyBookChapterVerses, tokensSource);
 
             // go thru all the ones we had and put the translated text into the text ones and transfer the non-text ones in order into the list to Put
@@ -565,15 +610,10 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
             return vrefTokensTarget;
         }
 
-            // local function (to reduce the number of parameters needing to be passed)
-            bool NextTokenFromSourceOrTemplateParagraphMarker(out IUSFMToken marker)
-            {
-                var isFromSource = (tokensSource.Count > insertionIndex);
-                marker = isFromSource 
-                            ? tokensSource[insertionIndex]
-                            : ParagraphToken(usfmTokensSource, usfmTokensTarget, latestTextToken);  // fall back to a paragraph marker
-                return !isFromSource || IsParagraphToken(marker);   // negative means isInsertedParagraph (or if the next one in the source was a paragraph)
-            }
+        private static List<string> GetTranslatedLines(string text)
+        {
+            return text?.Split(new[] { Environment.NewLine }, StringSplitOptions.None)
+                                        .ToList();
         }
 
 #if SerializeToCreateTestFiles

From b16a4b79a8b095a70d7bb37661b5e6bd8dd32e75 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 12 Mar 2023 19:22:51 -0500
Subject: [PATCH 22/71] updated the writing to the textBoxStatus (it needed
 Application.DoEvents()) for it to show

---
 .../BackTranslationHelperForm.cs              | 29 +++++++++++++++----
 1 file changed, 23 insertions(+), 6 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 215771d1..2ee234af 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -106,13 +106,13 @@ public BackTranslationHelperForm(IPluginHost host, ParatextBackTranslationHelper
         private void TargetBackTranslationTextChanged(string value)
         {
             var translatedCount = GetTranslatedLines(value).Count;
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: TargetBackTranslationTextChanged: SourceDataLineCount = '{SourceDataLineCount}', translatedCount = '{translatedCount}'");
             if (SourceDataLineCount != translatedCount)
-            {
-                // TODO: add a tooltip to show how the currently translated lines will be put into the source project markers
                 textBoxStatus.Text = $"There are currently {translatedCount} lines of text in the Target Translation box vs. {SourceDataLineCount} text lines in the source verse (one for each of these markers: {String.Join(",", TextTokenMarkersSource.Select(m => $"\\{m.Marker}"))})";
-            }
             else
-                textBoxStatus.Clear();
+                textBoxStatus.Text = String.Empty;
+
+            Application.DoEvents(); // this says we need to do this for when it won't display the change: https://social.msdn.microsoft.com/Forums/vstudio/en-US/983d2e3b-9bcb-4c9c-9e85-59f8b2051b3e/program-updating-a-textbox-does-not-work?forum=csharpgeneral
         }
 
         private static string GetFrameText(IProject projectSource, IProject projectTarget, IVerseRef versesReference)
@@ -162,19 +162,36 @@ private void ScriptureDataChangedHandlerTarget(IProject sender, int bookNum, int
 
         private void Host_VerseRefChanged(IPluginHost sender, IVerseRef newReference, SyncReferenceGroup group)
         {
-            System.Diagnostics.Debug.WriteLine($"PtxBTH: In Host_VerseRefChanged {newReference} & {group}, _isNotInFocus: {_isNotInFocus}, IsModified: {backTranslationHelperCtrl.IsModified}");
+            var newRef = (newReference.RepresentsMultipleVerses) ? newReference.AllVerses.First() : newReference;
+            System.Diagnostics.Debug.WriteLine($"PtxBTH: In Host_VerseRefChanged {newReference} (newRef: {newRef}) & {group}, _isNotInFocus: {_isNotInFocus}, IsModified: {backTranslationHelperCtrl.IsModified}");
 
             // since this will initialize the _verseReference, which is intended to be the first
             //  of a series of verses...
             // UPDATE: but not if the Form isn't in focus (so we don't thrash around converting stuff while
             //  the user may be editing stuff in Ptx)
             if (_isNotInFocus && backTranslationHelperCtrl.IsModified)
+            {
+                textBoxStatus.Text = $"Staying on {_verseReference} because the Target Translation box was modified. Click here to update to current verse in Paratext";
+                textBoxStatus.Tag = newRef;
+                Application.DoEvents(); // this says we need to do this for when it won't display the change: https://social.msdn.microsoft.com/Forums/vstudio/en-US/983d2e3b-9bcb-4c9c-9e85-59f8b2051b3e/program-updating-a-textbox-does-not-work?forum=csharpgeneral
                 return;
+            }
+            else
+                textBoxStatus.Tag = null;
 
-            var newRef = (newReference.RepresentsMultipleVerses) ? newReference.AllVerses.First() : newReference;
             GetNewReference(newRef);
         }
 
+        private void TextBoxStatus_Click(object sender, System.EventArgs e)
+        {
+            if (textBoxStatus.Tag != null)
+            {
+                backTranslationHelperCtrl.IsModified = false;
+                var newReference = (IVerseRef)textBoxStatus.Tag;
+                GetNewReference(newReference);
+            }
+        }
+
         private void GetNewReference(IVerseRef newReference)
         {
             Unlock();

From c6ac79e0f200c094322629562f076dddc91b3d18 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 12 Mar 2023 19:25:29 -0500
Subject: [PATCH 23/71] fixed a number of bugs related working with a target
 project that has no existing data and discrepancies between versification
 between source and target (source is combined, target are separate, and
 vice-versa)

---
 .../BackTranslationHelperForm.cs              |   43 +-
 .../TestBwdc/TestBwdc.csproj                  |   18 +
 ...eSeparateNoEmptyInTarget_TokensSource.json |  264 +
 ...eSeparateNoEmptyInTarget_TokensTarget.json | 2508 ++++++++
 ...ateNoEmptyInTarget_TokensTargetUpdate.json | 2526 ++++++++
 ...SeparateNoEmptyInTarget_TranslatedText.txt |    1 +
 ...eparateNoEmptyInTarget_VerseReference.json |   40 +
 ...parateNoEmptyInTarget_VersesReference.json |   40 +
 ...ltipleVersesWithFootnote_TokensSource.json |  326 ++
 ...ltipleVersesWithFootnote_TokensTarget.json | 5193 +++++++++++++++++
 ...VersesWithFootnote_TokensTargetUpdate.json | 4589 +++++++++++++++
 ...tipleVersesWithFootnote_TranslatedText.txt |    2 +
 ...ipleVersesWithFootnote_VerseReference.json |   13 +
 ...pleVersesWithFootnote_VersesReference.json |   40 +
 ...CombinedButEmptyInTarget_TokensSource.json |  308 +
 ...CombinedButEmptyInTarget_TokensTarget.json | 2478 ++++++++
 ...edButEmptyInTarget_TokensTargetUpdate.json | 2340 ++++++++
 ...ombinedButEmptyInTarget_TranslatedText.txt |    1 +
 ...mbinedButEmptyInTarget_VerseReference.json |   13 +
 ...binedButEmptyInTarget_VersesReference.json |   13 +
 .../TestBwdc/UnitTest_PtxBackTrHelper.cs      |   31 +-
 21 files changed, 20770 insertions(+), 17 deletions(-)
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensSource.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTarget.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTargetUpdate.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TranslatedText.txt
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VerseReference.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VersesReference.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensSource.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTarget.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTargetUpdate.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TranslatedText.txt
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VerseReference.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VersesReference.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensSource.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTarget.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTargetUpdate.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TranslatedText.txt
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VerseReference.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VersesReference.json

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 2ee234af..dad90447 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -12,6 +12,8 @@
 using System.Linq;
 using System.Windows.Forms;
 using Newtonsoft.Json;
+using System.Windows;
+using System.Security.Policy;
 
 namespace SIL.ParatextBackTranslationHelperPlugin
 {
@@ -270,7 +272,7 @@ private string CurrentSourceData
         {
             get
             {
-                var keyBookChapterVerse = GetBookChapterVerseKey(_verseReference);
+                var keyBookChapterVerse = GetBookChapterVerseRangeKey(_verseReference);
                 if (!UsfmTokensSource.TryGetValue(keyBookChapterVerse, out List<IUSFMToken> tokens))
                 {
                     System.Diagnostics.Debug.WriteLine($"PtxBTH: Loading UsfmTokensSource for {keyBookChapterVerse}");
@@ -286,6 +288,9 @@ private string CurrentSourceData
                                  .Where(t => t.IsPublishableVernacular && IsMatchingVerse(t.VerseRef, _verseReference))
                                  .ToDictionary(ta => ta, ta => ta.VerseRef);
 
+                if (!data.Any())
+                    return null;
+
                 TextTokenMarkersSource = GetTextTokenMarkers(tokens, data.Keys.ToList());
 
                 var textValues = data.Select(t => t.Key.Text);
@@ -338,7 +343,7 @@ private string CurrentTargetData
                     System.Diagnostics.Debug.WriteLine($"PtxBTH: Loading UsfmTokensTarget for {bookChapterKey}");
                     var chapterTokens = _projectTarget.GetUSFMTokens(_verseReference.BookNum, _verseReference.ChapterNum).ToList();
                     var dict = chapterTokens.GroupBy(t => t.VerseRef, t => t, (key, g) => new { VerseRef = key, USFMTokens = g.ToList() })
-                                            .ToDictionary(t => GetBookChapterVerseKey(t.VerseRef), t => t.USFMTokens);
+                                            .ToDictionary(t => GetBookChapterVerseRangeKey(t.VerseRef), t => t.USFMTokens);
                     vrefTokens = new SortedDictionary<string, List<IUSFMToken>>(dict);
                     UsfmTokensTarget.Add(bookChapterKey, vrefTokens);
                 }
@@ -347,7 +352,7 @@ private string CurrentTargetData
                     System.Diagnostics.Debug.WriteLine($"PtxBTH: Already have UsfmTokensTarget for {bookChapterKey}");
                 }
 
-                var bookChapterVerseKey = GetBookChapterVerseKey(_verseReference);
+                var bookChapterVerseKey = GetBookChapterVerseRangeKey(_verseReference);
 
                 // issue: if Ptx is in "I'm just a single verse" mode (e.g. clicking up/down in the combo box at the top)
                 //  then this will show a single verse even if the text is a multi-verse situation
@@ -355,7 +360,7 @@ private string CurrentTargetData
                 //  which one it *should* be so we can find a hit in vrefTokens
                 bookChapterVerseKey = TriangulateBookChapterVerseKey(bookChapterVerseKey, vrefTokens);
 
-                if (!vrefTokens.ContainsKey(bookChapterVerseKey))
+                if (String.IsNullOrEmpty(bookChapterVerseKey) || !vrefTokens.ContainsKey(bookChapterVerseKey))
                     return null;
 
                 var tokens = vrefTokens[bookChapterVerseKey];
@@ -373,7 +378,7 @@ private static string TriangulateBookChapterVerseKey(string bookChapterVerseKey,
             if (vrefTokens.ContainsKey(bookChapterVerseKey))
                 return bookChapterVerseKey;
 
-            var vrefTokenKey = vrefTokens.FirstOrDefault(t => t.Value.Any(v => v.VerseRef.AllVerses.Any(sv => GetBookChapterVerseKey(sv) == bookChapterVerseKey))).Key;
+            var vrefTokenKey = vrefTokens.FirstOrDefault(t => t.Value.Any(v => v.VerseRef.AllVerses.Any(sv => GetBookChapterVerseRangeKey(sv) == bookChapterVerseKey))).Key;
             return vrefTokenKey;
         }
 
@@ -383,7 +388,7 @@ private static string GetBookChapterKey(IVerseRef verseReference)
             return $"{verseReference.BookNum:D2}_{verseReference.ChapterNum:D3}";
         }
 
-        private static string GetBookChapterVerseKey(IVerseRef verseReference)
+        private static string GetBookChapterVerseRangeKey(IVerseRef verseReference)
         {
             // get the key to see if we already have this data (TODO: add a 'it was changed in Ptx', so we can remove it from this collection)
             var bookChapterFirstVerse = $"{verseReference.BookNum:D2}_{verseReference.ChapterNum:D3}_{verseReference.VerseNum:D3}";
@@ -394,8 +399,9 @@ private static string GetBookChapterVerseKey(IVerseRef verseReference)
 
         private static bool IsMatchingVerse(IVerseRef verseReferenceFromToken, IVerseRef verseReference)
         {
-            return ((verseReferenceFromToken.ToString() == verseReference.ToString()) || 
-                    (verseReferenceFromToken?.AllVerses?.Any(vr => vr.ToString() == verseReference?.ToString()) ?? false));
+            return ((verseReferenceFromToken?.ToString() == verseReference?.ToString()) || 
+                    (verseReferenceFromToken.AllVerses?.Any(vr => vr.ToString() == verseReference?.ToString()) ?? false) ||
+                    (verseReference?.AllVerses?.Any(vr => vr.ToString() == verseReferenceFromToken.ToString()) ?? false));
         }
 
         private void ReleaseRequested(IWriteLock obj)
@@ -552,9 +558,9 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
                 return null;
 
             // get the source project tokens (so we can use those in the target project)
-            // if by chance, there are non, then it must be that we marked them 'dirty', so just return mull 
+            // if by chance, there are none, then it must be that we marked them 'dirty', so just return mull 
             //  to have them be requeried
-            var keyBookChapterVerse = GetBookChapterVerseKey(verseReference);
+            var keyBookChapterVerse = GetBookChapterVerseRangeKey(verseReference);
             if (!usfmTokensSource.TryGetValue(keyBookChapterVerse, out List<IUSFMToken> tokensSource))
                 return null;
 
@@ -575,10 +581,15 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
             //  have any, it probably means that the user didn't have any data in the target project yet... But 
             //  it doesn't really matter, bkz we're just going to replace them with a copy of the source tokens
             //  anyway, which will be replaced w/ the translated text below
-            var keyBookChapterVerses = GetBookChapterVerseKey(versesReference);
+            var keyBookChapterVerses = GetBookChapterVerseRangeKey(versesReference);
             var tokensTarget = tokensSource;
-            if (vrefTokensTarget.ContainsKey(keyBookChapterVerse))
-                vrefTokensTarget[keyBookChapterVerse] = tokensSource;
+
+            // before adding it back in, remove any data in the target collection for any and all verses in the source range
+            var matchingTokensInTarget = vrefTokensTarget.Where(kvp => kvp.Value.Any(t => IsMatchingVerse(t.VerseRef, verseReference))).ToList();
+            matchingTokensInTarget.ForEach(kvp => vrefTokensTarget.Remove(kvp.Key));
+
+            if (vrefTokensTarget.ContainsKey(keyBookChapterVerses))
+                vrefTokensTarget[keyBookChapterVerses] = tokensSource;
             else
                 vrefTokensTarget.Add(keyBookChapterVerses, tokensSource);
 
@@ -670,6 +681,12 @@ private static bool IsParagraphToken(IUSFMToken token)
             return (token is IUSFMMarkerToken markerToken) && (markerToken.Type == MarkerType.Paragraph) && _paragraphMarkers.Contains(markerToken.Marker);
         }
 
+        protected override void OnShown(EventArgs e)
+        {
+            base.OnShown(e);
+            GetNewReference(_verseReference);
+        }
+
         private void BackTranslationHelperForm_Load(object sender, EventArgs e)
         {
             Text = GetFrameText(_projectSource, _projectTarget, _verseReference);
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 78034b5f..74191543 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -289,6 +289,9 @@
     <Content Include="redist\Help\TECkit_Map_Plug-in_About_box.htm" />
     <Content Include="TestFiles\BulkWordDocConverter\TestFile1.xml" />
     <Content Include="TestFiles\BulkWordDocConverter\TestFile2.xml" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_TranslatedText.txt" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SeparateInSourceCombinedButEmptyInTarget\SeparateInSourceCombinedButEmptyInTarget_TranslatedText.txt" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVersesWithFootnote\MultipleVersesWithFootnote_TranslatedText.txt" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SingleVerse\MultiplePoeticParagraphs\MultiplePoeticParagraphsMissingInTarget\MultiplePoeticParagraphsMissingInTarget_TranslatedText.txt" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVerses\MultipleVersesAndParagraphsMiTJoinedIntoOneParagraphs\MultipleVersesAndParagraphsMiTJoinedIntoOneParagraphs_TranslatedText.txt" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVerses\MultipleVersesAndParagraphsJoinedIntoOneParagraphs\MultipleVersesAndParagraphsJoinedIntoOneParagraphs_TranslatedText.txt" />
@@ -420,6 +423,21 @@
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SingleVerse\MultiplePoeticParagraphs\MultiplePoeticParagraphs_VersesReference.json" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SingleVerse\MultiplePoeticParagraphs\MultiplePoeticParagraphsMissingInTarget\MultiplePoeticParagraphsMissingInTarget_TokensTarget.json" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SingleVerse\MultiplePoeticParagraphs\MultiplePoeticParagraphsMissingInTarget\MultiplePoeticParagraphsMissingInTarget_TokensTargetUpdate.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVersesWithFootnote\MultipleVersesWithFootnote_TokensSource.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVersesWithFootnote\MultipleVersesWithFootnote_TokensTarget.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVersesWithFootnote\MultipleVersesWithFootnote_VerseReference.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVersesWithFootnote\MultipleVersesWithFootnote_VersesReference.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVersesWithFootnote\MultipleVersesWithFootnote_TokensTargetUpdate.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SeparateInSourceCombinedButEmptyInTarget\SeparateInSourceCombinedButEmptyInTarget_TokensSource.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SeparateInSourceCombinedButEmptyInTarget\SeparateInSourceCombinedButEmptyInTarget_TokensTarget.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SeparateInSourceCombinedButEmptyInTarget\SeparateInSourceCombinedButEmptyInTarget_TokensTargetUpdate.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SeparateInSourceCombinedButEmptyInTarget\SeparateInSourceCombinedButEmptyInTarget_VerseReference.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SeparateInSourceCombinedButEmptyInTarget\SeparateInSourceCombinedButEmptyInTarget_VersesReference.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_TokensSource.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_TokensTarget.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_TokensTargetUpdate.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_VerseReference.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_VersesReference.json" />
   </ItemGroup>
   <ItemGroup />
   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensSource.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensSource.json
new file mode 100644
index 00000000..8badf263
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensSource.json
@@ -0,0 +1,264 @@
+{
+  "01_001_001-002": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "1-2",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1-2",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "परमेश्वर ने सृष्टि की रचना यूँ की: आरम्‍भ में परमेश्वर ने पृथ्‍वी की रचना की। परंतु उस समय वह सुनसान थी, और उस पर केवल पानी ही था। और चारों ओर कोई प्रकाश भी नहीं था। परमेश्वर की आत्‍मा उस पानी के ऊपर मंडराती थी। ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "परमेश्वर ने सृष्टि की रचना यूँ की: आरम्‍भ में परमेश्वर ने पृथ्‍वी की रचना की। परंतु उस समय वह सुनसान थी, और उस पर केवल पानी ही था। और चारों ओर कोई प्रकाश भी नहीं था। परमेश्वर की आत्‍मा उस पानी के ऊपर मंडराती थी। ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 7,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 219,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 222,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTarget.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTarget.json
new file mode 100644
index 00000000..54f0b076
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTarget.json
@@ -0,0 +1,2508 @@
+{
+  "01_001": {
+    "01_001_000": [
+      {
+        "Type": 0,
+        "Marker": "id",
+        "Attributes": [],
+        "Data": "GEN",
+        "EndMarker": null,
+        "Token": {
+          "Type": 0,
+          "Marker": "id",
+          "Text": null,
+          "Attributes": null,
+          "Data": "GEN",
+          "EndMarker": null,
+          "NestlessMarker": "id",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": true,
+        "IsPublishableVernacular": false
+      },
+      {
+        "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 8,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": true,
+        "IsPublishableVernacular": false
+      },
+      {
+        "Type": 3,
+        "Marker": "h",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "h",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "h*",
+          "NestlessMarker": "h",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 47,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Creation ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Creation ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 50,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "toc3",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "toc3",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "toc3*",
+          "NestlessMarker": "toc3",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 59,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Cre ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Cre ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 65,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "toc2",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "toc2",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "toc2*",
+          "NestlessMarker": "toc2",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 69,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Creation ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Creation ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 75,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "toc1",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "toc1",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "toc1*",
+          "NestlessMarker": "toc1",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 84,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Creation ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Creation ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 90,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "h",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "h",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "h*",
+          "NestlessMarker": "h",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 99,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "mt",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "mt",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "mt*",
+          "NestlessMarker": "mt",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 102,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 1,
+        "Marker": "c",
+        "Attributes": [],
+        "Data": "1",
+        "EndMarker": null,
+        "Token": {
+          "Type": 1,
+          "Marker": "c",
+          "Text": null,
+          "Attributes": null,
+          "Data": "1",
+          "EndMarker": null,
+          "NestlessMarker": "c",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 106,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 111,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_001": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "1",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "1",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 1,
+          "BBBCCCVVV": 1001001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "This is how God created the universe: In the beginning God created the earth. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "This is how God created the universe: In the beginning God created the earth. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 1,
+          "BBBCCCVVV": 1001001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_002": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "2",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "2",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 2,
+          "BBBCCCVVV": 1001002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But at that time she was deserted, and there was only water on it. There was no light all around. God's Spirit hovered over that water. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But at that time she was deserted, and there was only water on it. There was no light all around. God's Spirit hovered over that water. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 2,
+          "BBBCCCVVV": 1001002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 2,
+          "BBBCCCVVV": 1001002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 141,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 2,
+          "BBBCCCVVV": 1001002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 144,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_003": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "3",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "3",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 3,
+          "BBBCCCVVV": 1001003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_004": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "4",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "4",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 4,
+          "BBBCCCVVV": 1001004,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_005": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "5",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "5",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 5,
+          "BBBCCCVVV": 1001005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 5,
+          "BBBCCCVVV": 1001005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 5,
+          "BBBCCCVVV": 1001005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 8,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_006": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "6",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "6",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 6,
+          "BBBCCCVVV": 1001006,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_007": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "7",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "7",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 7,
+          "BBBCCCVVV": 1001007,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_008": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "8",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "8",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 8,
+          "BBBCCCVVV": 1001008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 8,
+          "BBBCCCVVV": 1001008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 8,
+          "BBBCCCVVV": 1001008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 8,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_009": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "9",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "9",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 9,
+          "BBBCCCVVV": 1001009,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_010": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "10",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "10",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 10,
+          "BBBCCCVVV": 1001010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 10,
+          "BBBCCCVVV": 1001010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_011": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "11",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "11",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 11,
+          "BBBCCCVVV": 1001011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_012": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "12",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "12",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 12,
+          "BBBCCCVVV": 1001012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_013": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "13",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "13",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 13,
+          "BBBCCCVVV": 1001013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 13,
+          "BBBCCCVVV": 1001013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 13,
+          "BBBCCCVVV": 1001013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_014-015": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "14-15",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "14-15",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 14,
+          "BBBCCCVVV": 1001014,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 14,
+              "BBBCCCVVV": 1001014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 15,
+              "BBBCCCVVV": 1001015,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_016": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "16",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "16",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 16,
+          "BBBCCCVVV": 1001016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 16,
+          "BBBCCCVVV": 1001016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_017-018": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "17-18",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "17-18",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 17,
+          "BBBCCCVVV": 1001017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 17,
+              "BBBCCCVVV": 1001017,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 18,
+              "BBBCCCVVV": 1001018,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_019": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "19",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "19",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 19,
+          "BBBCCCVVV": 1001019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 19,
+          "BBBCCCVVV": 1001019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 19,
+          "BBBCCCVVV": 1001019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_020": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "20",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "20",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 20,
+          "BBBCCCVVV": 1001020,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_021": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "21",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "21",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 21,
+          "BBBCCCVVV": 1001021,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_022": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "22",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "22",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 22,
+          "BBBCCCVVV": 1001022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_023": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "23",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "23",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 23,
+          "BBBCCCVVV": 1001023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 23,
+          "BBBCCCVVV": 1001023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 23,
+          "BBBCCCVVV": 1001023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_024": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "24",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "24",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 24,
+          "BBBCCCVVV": 1001024,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_025": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "25",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "25",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 25,
+          "BBBCCCVVV": 1001025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 25,
+          "BBBCCCVVV": 1001025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_026": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "26",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "26",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 26,
+          "BBBCCCVVV": 1001026,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_027": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "27",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "27",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 27,
+          "BBBCCCVVV": 1001027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 27,
+          "BBBCCCVVV": 1001027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_028": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "28",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "28",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 28,
+          "BBBCCCVVV": 1001028,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_029": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "29",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "29",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 29,
+          "BBBCCCVVV": 1001029,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_030": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "30",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "30",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 30,
+          "BBBCCCVVV": 1001030,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 30,
+          "BBBCCCVVV": 1001030,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_031": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "31",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "31",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 31,
+          "BBBCCCVVV": 1001031,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ]
+  }
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTargetUpdate.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTargetUpdate.json
new file mode 100644
index 00000000..e66963c5
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TokensTargetUpdate.json
@@ -0,0 +1,2526 @@
+{
+  "01_001_000": [
+    {
+      "Type": 0,
+      "Marker": "id",
+      "Attributes": [],
+      "Data": "GEN",
+      "EndMarker": null,
+      "Token": {
+        "Type": 0,
+        "Marker": "id",
+        "Text": null,
+        "Attributes": null,
+        "Data": "GEN",
+        "EndMarker": null,
+        "NestlessMarker": "id",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 8,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Type": 3,
+      "Marker": "h",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "h",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "h*",
+        "NestlessMarker": "h",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 47,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Creation ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Creation ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 50,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "toc3",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "toc3",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "toc3*",
+        "NestlessMarker": "toc3",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 59,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Cre ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Cre ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 65,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "toc2",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "toc2",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "toc2*",
+        "NestlessMarker": "toc2",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 69,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Creation ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Creation ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 75,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "toc1",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "toc1",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "toc1*",
+        "NestlessMarker": "toc1",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 84,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Creation ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Creation ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 90,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "h",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "h",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "h*",
+        "NestlessMarker": "h",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 99,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "mt",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "mt",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "mt*",
+        "NestlessMarker": "mt",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 102,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 1,
+      "Marker": "c",
+      "Attributes": [],
+      "Data": "1",
+      "EndMarker": null,
+      "Token": {
+        "Type": 1,
+        "Marker": "c",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1",
+        "EndMarker": null,
+        "NestlessMarker": "c",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 106,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 111,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_001-002": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "1-2",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1-2",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "This is how God created the universe: In the beginning God created the earth. But at that time she was deserted, and there was only water on it. There was no light all around. God's Spirit hovered over that water. ",
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 7,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 219,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 1,
+            "BBBCCCVVV": 1001001,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 2,
+            "BBBCCCVVV": 1001002,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 222,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_003": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "3",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "3",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 3,
+        "BBBCCCVVV": 1001003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_004": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "4",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "4",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 4,
+        "BBBCCCVVV": 1001004,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_005": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "5",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "5",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 5,
+        "BBBCCCVVV": 1001005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 5,
+        "BBBCCCVVV": 1001005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 5,
+        "BBBCCCVVV": 1001005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 8,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_006": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "6",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "6",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 6,
+        "BBBCCCVVV": 1001006,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_007": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "7",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "7",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 7,
+        "BBBCCCVVV": 1001007,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_008": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "8",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "8",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 8,
+        "BBBCCCVVV": 1001008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 8,
+        "BBBCCCVVV": 1001008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 8,
+        "BBBCCCVVV": 1001008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 8,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_009": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "9",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "9",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 9,
+        "BBBCCCVVV": 1001009,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_010": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "10",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "10",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 10,
+        "BBBCCCVVV": 1001010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 10,
+        "BBBCCCVVV": 1001010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_011": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "11",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "11",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 11,
+        "BBBCCCVVV": 1001011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_012": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "12",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "12",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 12,
+        "BBBCCCVVV": 1001012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_013": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "13",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "13",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 13,
+        "BBBCCCVVV": 1001013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 13,
+        "BBBCCCVVV": 1001013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 13,
+        "BBBCCCVVV": 1001013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_014-015": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "14-15",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "14-15",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 14,
+        "BBBCCCVVV": 1001014,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 14,
+            "BBBCCCVVV": 1001014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 15,
+            "BBBCCCVVV": 1001015,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_016": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "16",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "16",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 16,
+        "BBBCCCVVV": 1001016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 16,
+        "BBBCCCVVV": 1001016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_017-018": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "17-18",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "17-18",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 17,
+        "BBBCCCVVV": 1001017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 17,
+            "BBBCCCVVV": 1001017,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 18,
+            "BBBCCCVVV": 1001018,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_019": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "19",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "19",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 19,
+        "BBBCCCVVV": 1001019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 19,
+        "BBBCCCVVV": 1001019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 19,
+        "BBBCCCVVV": 1001019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_020": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "20",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "20",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 20,
+        "BBBCCCVVV": 1001020,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_021": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "21",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "21",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 21,
+        "BBBCCCVVV": 1001021,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_022": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "22",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "22",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 22,
+        "BBBCCCVVV": 1001022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_023": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "23",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "23",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 23,
+        "BBBCCCVVV": 1001023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 23,
+        "BBBCCCVVV": 1001023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 23,
+        "BBBCCCVVV": 1001023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_024": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "24",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "24",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 24,
+        "BBBCCCVVV": 1001024,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_025": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "25",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "25",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 25,
+        "BBBCCCVVV": 1001025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 25,
+        "BBBCCCVVV": 1001025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_026": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "26",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "26",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 26,
+        "BBBCCCVVV": 1001026,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_027": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "27",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "27",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 27,
+        "BBBCCCVVV": 1001027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 27,
+        "BBBCCCVVV": 1001027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_028": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "28",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "28",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 28,
+        "BBBCCCVVV": 1001028,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_029": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "29",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "29",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 29,
+        "BBBCCCVVV": 1001029,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_030": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "30",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "30",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 30,
+        "BBBCCCVVV": 1001030,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 30,
+        "BBBCCCVVV": 1001030,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_031": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "31",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "31",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 31,
+        "BBBCCCVVV": 1001031,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TranslatedText.txt b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TranslatedText.txt
new file mode 100644
index 00000000..1b7aa1cf
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_TranslatedText.txt
@@ -0,0 +1 @@
+This is how God created the universe: In the beginning God created the earth. But at that time she was deserted, and there was only water on it. There was no light all around. God's Spirit hovered over that water. 
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VerseReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VerseReference.json
new file mode 100644
index 00000000..0b01bd8a
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VerseReference.json
@@ -0,0 +1,40 @@
+{
+  "BookCode": "GEN",
+  "BookNum": 1,
+  "ChapterNum": 1,
+  "VerseNum": 1,
+  "BBBCCCVVV": 1001001,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": true,
+  "AllVerses": [
+    {
+      "BookCode": "GEN",
+      "BookNum": 1,
+      "ChapterNum": 1,
+      "VerseNum": 1,
+      "BBBCCCVVV": 1001001,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    },
+    {
+      "BookCode": "GEN",
+      "BookNum": 1,
+      "ChapterNum": 1,
+      "VerseNum": 2,
+      "BBBCCCVVV": 1001002,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VersesReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VersesReference.json
new file mode 100644
index 00000000..0b01bd8a
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceSeparateNoEmptyInTarget/CombinedInSourceSeparateNoEmptyInTarget_VersesReference.json
@@ -0,0 +1,40 @@
+{
+  "BookCode": "GEN",
+  "BookNum": 1,
+  "ChapterNum": 1,
+  "VerseNum": 1,
+  "BBBCCCVVV": 1001001,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": true,
+  "AllVerses": [
+    {
+      "BookCode": "GEN",
+      "BookNum": 1,
+      "ChapterNum": 1,
+      "VerseNum": 1,
+      "BBBCCCVVV": 1001001,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    },
+    {
+      "BookCode": "GEN",
+      "BookNum": 1,
+      "ChapterNum": 1,
+      "VerseNum": 2,
+      "BBBCCCVVV": 1001002,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensSource.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensSource.json
new file mode 100644
index 00000000..404e21e7
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensSource.json
@@ -0,0 +1,326 @@
+{
+  "52_005_013": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "13-14",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "13-14",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "इसलिए उनकी इस सेवकाई के कारण उनका प्रेम सहित बहुत आदर करो। ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "इसलिए उनकी इस सेवकाई के कारण उनका प्रेम सहित बहुत आदर करो। ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 68,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "मेरे भाई-बहनों, हमारी तुमसे यह भी विनती है कि मंडली में आपस में एक-दूसरे के साथ मेल-मिलाप से रहो। तुम में जो आलसी हो गये हैं, उनको प्रतिदिन की रोटी कमाने के लिए परिश्रम करने की चेतावनी दो। डरपोकों का साहस बढ़ाओ। जिनमें दुर्बलताएँ हैं, उनकी सहायता करो। सभी की सहनशीलता के साथ सुधि लेते रहो। ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "मेरे भाई-बहनों, हमारी तुमसे यह भी विनती है कि मंडली में आपस में एक-दूसरे के साथ मेल-मिलाप से रहो। तुम में जो आलसी हो गये हैं, उनको प्रतिदिन की रोटी कमाने के लिए परिश्रम करने की चेतावनी दो। डरपोकों का साहस बढ़ाओ। जिनमें दुर्बलताएँ हैं, उनकी सहायता करो। सभी की सहनशीलता के साथ सुधि लेते रहो। ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 71,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 361,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTarget.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTarget.json
new file mode 100644
index 00000000..352bc8ee
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTarget.json
@@ -0,0 +1,5193 @@
+{
+  "52_005": {
+    "52_005_000": [
+      {
+        "Type": 1,
+        "Marker": "c",
+        "Attributes": [],
+        "Data": "5",
+        "EndMarker": null,
+        "Token": {
+          "Type": 1,
+          "Marker": "c",
+          "Text": null,
+          "Attributes": null,
+          "Data": "5",
+          "EndMarker": null,
+          "NestlessMarker": "c",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 0,
+          "BBBCCCVVV": 52005000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 0,
+          "BBBCCCVVV": 52005000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Be Prepared For the Return of the Lord Jesus ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Be Prepared For the Return of the Lord Jesus ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 0,
+          "BBBCCCVVV": 52005000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 8,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 0,
+          "BBBCCCVVV": 52005000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 53,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_001": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "1",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "1",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 1,
+          "BBBCCCVVV": 52005001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Brothers and sisters, I don’t think it is necessary to write to you about when the Lord Jesus Christ will return to this world. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Brothers and sisters, I don’t think it is necessary to write to you about when the Lord Jesus Christ will return to this world. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 1,
+          "BBBCCCVVV": 52005001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_002": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "2",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "2",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "For you know very well that the Lord will return when you have not even thought about it.",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "For you know very well that the Lord will return when you have not even thought about it.",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 94,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 99,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "5:2 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "5:2 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 103,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 107,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "when you have not even thought about it ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "when you have not even thought about it ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 111,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 151,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In Greek, “like a thief at night”. See, Revelation 3:3, 16:15; Matthew 24:42-44; 2 Peter 3:10. This is also in verses 4-5.",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In Greek, “like a thief at night”. See, Revelation 3:3, 16:15; Matthew 24:42-44; 2 Peter 3:10. This is also in verses 4-5.",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 155,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 277,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 280,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 2,
+          "BBBCCCVVV": 52005002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 281,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_003": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "3",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "3",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 3,
+          "BBBCCCVVV": 52005003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Those who are in the dark kingdom of Satan will then say, “Now there is peace all around, and there is nothing to fear...” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Those who are in the dark kingdom of Satan will then say, “Now there is peace all around, and there is nothing to fear...” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 3,
+          "BBBCCCVVV": 52005003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 3,
+          "BBBCCCVVV": 52005003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 128,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But what will really happen is that just as a pregnant woman feels the pain of childbirth in an instant, disaster will come upon them at once, and they will have nowhere to go. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But what will really happen is that just as a pregnant woman feels the pain of childbirth in an instant, disaster will come upon them at once, and they will have nowhere to go. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 3,
+          "BBBCCCVVV": 52005003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 131,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 3,
+          "BBBCCCVVV": 52005003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 308,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_004-005": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "4-5",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "4-5",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 4,
+          "BBBCCCVVV": 52005004,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 4,
+              "BBBCCCVVV": 52005004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 5,
+              "BBBCCCVVV": 52005005,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But brothers and sisters, you and I are neither of the ‘darkness’ nor of the ‘night’ like them. You belong to God’s ‘light’ and to the ‘day’. And for you, the return of the Lord will not be alarming or come as a surprise. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But brothers and sisters, you and I are neither of the ‘darkness’ nor of the ‘night’ like them. You belong to God’s ‘light’ and to the ‘day’. And for you, the return of the Lord will not be alarming or come as a surprise. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 4,
+          "BBBCCCVVV": 52005004,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 4,
+              "BBBCCCVVV": 52005004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 5,
+              "BBBCCCVVV": 52005005,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 7,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 4,
+          "BBBCCCVVV": 52005004,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 4,
+              "BBBCCCVVV": 52005004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 5,
+              "BBBCCCVVV": 52005005,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 229,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_006-007": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "6-7",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "6-7",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 6,
+          "BBBCCCVVV": 52005006,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 6,
+              "BBBCCCVVV": 52005006,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 7,
+              "BBBCCCVVV": 52005007,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "For ‘Night’ is when people drink and get drunk and sleep away their lives. So let us not sleep away our lives like them, but rather be vigilant and sober. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "For ‘Night’ is when people drink and get drunk and sleep away their lives. So let us not sleep away our lives like them, but rather be vigilant and sober. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 6,
+          "BBBCCCVVV": 52005006,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 6,
+              "BBBCCCVVV": 52005006,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 7,
+              "BBBCCCVVV": 52005007,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 7,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_008": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "8",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "8",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Since we are of the ‘day’, let us strap on our weapons and armor and be alert: such as the ‘helmet’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Since we are of the ‘day’, let us strap on our weapons and armor and be alert: such as the ‘helmet’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "x",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "x*",
+        "Token": {
+          "Type": 6,
+          "Marker": "x",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "x*",
+          "NestlessMarker": "x",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 105,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xo",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xo*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xo",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xo*",
+          "NestlessMarker": "xo",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 110,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "5.8 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "5.8 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 114,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xq*",
+          "NestlessMarker": "xq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 118,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "‘helmet’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "‘helmet’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 122,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xt",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xt*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xt",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xt*",
+          "NestlessMarker": "xt",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 131,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Eph 6:17 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Eph 6:17 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 135,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "x*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "x*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "x*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 144,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " of our full faith in salvation, and let us put on the ‘breastplate’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " of our full faith in salvation, and let us put on the ‘breastplate’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 147,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "x",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "x*",
+        "Token": {
+          "Type": 6,
+          "Marker": "x",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "x*",
+          "NestlessMarker": "x",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 216,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xo",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xo*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xo",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xo*",
+          "NestlessMarker": "xo",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 221,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "5.8 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "5.8 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 225,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xq*",
+          "NestlessMarker": "xq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 229,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "‘breastplate’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "‘breastplate’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 233,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xt",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xt*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xt",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xt*",
+          "NestlessMarker": "xt",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 247,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Eph 6:14,16 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Eph 6:14,16 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 251,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "x*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "x*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "x*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 263,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " of our faith in and love for Christ. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " of our faith in and love for Christ. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 266,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 8,
+          "BBBCCCVVV": 52005008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 304,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_009": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "9",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "9",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 9,
+          "BBBCCCVVV": 52005009,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "You see, God did not choose us to punish us, but rather to save us through the sacrifice of the Lord Jesus Christ. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "You see, God did not choose us to punish us, but rather to save us through the sacrifice of the Lord Jesus Christ. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 9,
+          "BBBCCCVVV": 52005009,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_010": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "10",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "10",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 10,
+          "BBBCCCVVV": 52005010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Jesus Christ gave His life for us, so that when He returns, whether we are alive or dead, He will take us to heaven to live with Him there forever and ever. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Jesus Christ gave His life for us, so that when He returns, whether we are alive or dead, He will take us to heaven to live with Him there forever and ever. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 10,
+          "BBBCCCVVV": 52005010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_011": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "11",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "11",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 11,
+          "BBBCCCVVV": 52005011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Therefore, continue to encourage one another, and help each other grow in spiritual maturity, just as you have been doing. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Therefore, continue to encourage one another, and help each other grow in spiritual maturity, just as you have been doing. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 11,
+          "BBBCCCVVV": 52005011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 11,
+          "BBBCCCVVV": 52005011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 129,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Final Warning and Greetings ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Final Warning and Greetings ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 11,
+          "BBBCCCVVV": 52005011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 132,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 11,
+          "BBBCCCVVV": 52005011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 160,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_012": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "12",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "12",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Brothers and sisters, we ask you to honor the leaders of the Church of the Lord Jesus,",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Brothers and sisters, we ask you to honor the leaders of the Church of the Lord Jesus,",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "x",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "x*",
+        "Token": {
+          "Type": 6,
+          "Marker": "x",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "x*",
+          "NestlessMarker": "x",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 92,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xo",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xo*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xo",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xo*",
+          "NestlessMarker": "xo",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 97,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "5:12 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "5:12 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 101,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xq*",
+          "NestlessMarker": "xq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 106,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "honor those leaders",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "honor those leaders",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 110,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xt",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xt*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xt",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xt*",
+          "NestlessMarker": "xt",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 129,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Hebrews 13:7-17 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Hebrews 13:7-17 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 133,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "x*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "x*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "x*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 149,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " who help you grow spiritually. They give their life and limb to guide you. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " who help you grow spiritually. They give their life and limb to guide you. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 12,
+          "BBBCCCVVV": 52005012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 152,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_013-014": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "13-14",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "13-14",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Because of their very hard work among you, give them plenty of love and honor. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Because of their very hard work among you, give them plenty of love and honor. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 88,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "My brothers and sisters, this also is our request to you that, in the group among yourselves, remain reconciled with one another. Those among you who are fallen into inactivity, explain to them to do hard.work to earn their daily needs. Increase the courage of those who are afraid. Those who are lacking knowledge,",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "My brothers and sisters, this also is our request to you that, in the group among yourselves, remain reconciled with one another. Those among you who are fallen into inactivity, explain to them to do hard.work to earn their daily needs. Increase the courage of those who are afraid. Those who are lacking knowledge,",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 91,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 406,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 411,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "5:13-14 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "5:13-14 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 415,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 423,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "lacking knowledge ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "lacking knowledge ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 427,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 445,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In the Greek language, “weak”. See Rom 14:1. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In the Greek language, “weak”. See Rom 14:1. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 449,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 494,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " help them. Keep on looking after everyone with patience. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " help them. Keep on looking after everyone with patience. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 497,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 13,
+          "BBBCCCVVV": 52005013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 13,
+              "BBBCCCVVV": 52005013,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "1TH",
+              "BookNum": 52,
+              "ChapterNum": 5,
+              "VerseNum": 14,
+              "BBBCCCVVV": 52005014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 555,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_015": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "15",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "15",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 15,
+          "BBBCCCVVV": 52005015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Be careful! No one among you should take revenge for evil. But in every situation, always look for ways to do good, not only to those within the Church, but also to outsiders. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Be careful! No one among you should take revenge for evil. But in every situation, always look for ways to do good, not only to those within the Church, but also to outsiders. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 15,
+          "BBBCCCVVV": 52005015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_016": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "16",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "16",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 16,
+          "BBBCCCVVV": 52005016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Always be happy. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Always be happy. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 16,
+          "BBBCCCVVV": 52005016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_017": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "17",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "17",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 17,
+          "BBBCCCVVV": 52005017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Always keep praying. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Always keep praying. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 17,
+          "BBBCCCVVV": 52005017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_018": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "18",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "18",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 18,
+          "BBBCCCVVV": 52005018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "No matter what happens, always give thank to God. This is God’s will for you as a believer in Christ Jesus. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "No matter what happens, always give thank to God. This is God’s will for you as a believer in Christ Jesus. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 18,
+          "BBBCCCVVV": 52005018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 18,
+          "BBBCCCVVV": 52005018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 114,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_019": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "19",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "19",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 19,
+          "BBBCCCVVV": 52005019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Let God’s Holy Spirit work in you. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Let God’s Holy Spirit work in you. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 19,
+          "BBBCCCVVV": 52005019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_020": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "20",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "20",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 20,
+          "BBBCCCVVV": 52005020,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Don’t ignore prophecies. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Don’t ignore prophecies. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 20,
+          "BBBCCCVVV": 52005020,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_021": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "21",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "21",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 21,
+          "BBBCCCVVV": 52005021,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But test them and all things first. If they are scripturally correct, accept them. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But test them and all things first. If they are scripturally correct, accept them. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 21,
+          "BBBCCCVVV": 52005021,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_022": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "22",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "22",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 22,
+          "BBBCCCVVV": 52005022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "And stay away from all evil. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "And stay away from all evil. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 22,
+          "BBBCCCVVV": 52005022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 22,
+          "BBBCCCVVV": 52005022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 35,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_023": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "23",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "23",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "May the peace-giving God Himself sanctify everything in your life holy, so that you may be completely blameless ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "May the peace-giving God Himself sanctify everything in your life holy, so that you may be completely blameless ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 118,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 123,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "5:23 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "5:23 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 127,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 132,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "completely ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "completely ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 136,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 147,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In the Greek language, “whole spirit, soul, and body.” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In the Greek language, “whole spirit, soul, and body.” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 151,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 206,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " at the return of the Lord Jesus Christ. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " at the return of the Lord Jesus Christ. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 23,
+          "BBBCCCVVV": 52005023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 209,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_024": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "24",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "24",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 24,
+          "BBBCCCVVV": 52005024,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "And look, the God who has chosen you is faithful, and He will surely do this. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "And look, the God who has chosen you is faithful, and He will surely do this. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 24,
+          "BBBCCCVVV": 52005024,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 24,
+          "BBBCCCVVV": 52005024,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 84,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_025": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "25",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "25",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 25,
+          "BBBCCCVVV": 52005025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Brothers and sisters, continue to pray for us also. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Brothers and sisters, continue to pray for us also. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 25,
+          "BBBCCCVVV": 52005025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_026": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "26",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "26",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 26,
+          "BBBCCCVVV": 52005026,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Embrace and greet each other. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Embrace and greet each other. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 26,
+          "BBBCCCVVV": 52005026,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_027": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "27",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "27",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 27,
+          "BBBCCCVVV": 52005027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Before the Lord Jesus read this letter aloud to all the believers in the church there. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Before the Lord Jesus read this letter aloud to all the believers in the church there. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 27,
+          "BBBCCCVVV": 52005027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 27,
+          "BBBCCCVVV": 52005027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 93,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "52_005_028": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "28",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "28",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 28,
+          "BBBCCCVVV": 52005028,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "The grace of our Lord Jesus Christ be with you. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "The grace of our Lord Jesus Christ be with you. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "1TH",
+          "BookNum": 52,
+          "ChapterNum": 5,
+          "VerseNum": 28,
+          "BBBCCCVVV": 52005028,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ]
+  }
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTargetUpdate.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTargetUpdate.json
new file mode 100644
index 00000000..b814f029
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TokensTargetUpdate.json
@@ -0,0 +1,4589 @@
+{
+  "52_005_000": [
+    {
+      "Type": 1,
+      "Marker": "c",
+      "Attributes": [],
+      "Data": "5",
+      "EndMarker": null,
+      "Token": {
+        "Type": 1,
+        "Marker": "c",
+        "Text": null,
+        "Attributes": null,
+        "Data": "5",
+        "EndMarker": null,
+        "NestlessMarker": "c",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 0,
+        "BBBCCCVVV": 52005000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 0,
+        "BBBCCCVVV": 52005000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Be Prepared For the Return of the Lord Jesus ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Be Prepared For the Return of the Lord Jesus ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 0,
+        "BBBCCCVVV": 52005000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 8,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 0,
+        "BBBCCCVVV": 52005000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 53,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_001": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "1",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 1,
+        "BBBCCCVVV": 52005001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Brothers and sisters, I don’t think it is necessary to write to you about when the Lord Jesus Christ will return to this world. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Brothers and sisters, I don’t think it is necessary to write to you about when the Lord Jesus Christ will return to this world. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 1,
+        "BBBCCCVVV": 52005001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_002": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "2",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "2",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "For you know very well that the Lord will return when you have not even thought about it.",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "For you know very well that the Lord will return when you have not even thought about it.",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 94,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 99,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "5:2 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "5:2 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 103,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fq*",
+        "NestlessMarker": "fq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 107,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "when you have not even thought about it ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "when you have not even thought about it ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 111,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 151,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "In Greek, “like a thief at night”. See, Revelation 3:3, 16:15; Matthew 24:42-44; 2 Peter 3:10. This is also in verses 4-5.",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "In Greek, “like a thief at night”. See, Revelation 3:3, 16:15; Matthew 24:42-44; 2 Peter 3:10. This is also in verses 4-5.",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 155,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 277,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 280,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 2,
+        "BBBCCCVVV": 52005002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 281,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_003": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "3",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "3",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 3,
+        "BBBCCCVVV": 52005003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Those who are in the dark kingdom of Satan will then say, “Now there is peace all around, and there is nothing to fear...” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Those who are in the dark kingdom of Satan will then say, “Now there is peace all around, and there is nothing to fear...” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 3,
+        "BBBCCCVVV": 52005003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 3,
+        "BBBCCCVVV": 52005003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 128,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "But what will really happen is that just as a pregnant woman feels the pain of childbirth in an instant, disaster will come upon them at once, and they will have nowhere to go. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "But what will really happen is that just as a pregnant woman feels the pain of childbirth in an instant, disaster will come upon them at once, and they will have nowhere to go. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 3,
+        "BBBCCCVVV": 52005003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 131,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 3,
+        "BBBCCCVVV": 52005003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 308,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_004-005": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "4-5",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "4-5",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 4,
+        "BBBCCCVVV": 52005004,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 4,
+            "BBBCCCVVV": 52005004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 5,
+            "BBBCCCVVV": 52005005,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "But brothers and sisters, you and I are neither of the ‘darkness’ nor of the ‘night’ like them. You belong to God’s ‘light’ and to the ‘day’. And for you, the return of the Lord will not be alarming or come as a surprise. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "But brothers and sisters, you and I are neither of the ‘darkness’ nor of the ‘night’ like them. You belong to God’s ‘light’ and to the ‘day’. And for you, the return of the Lord will not be alarming or come as a surprise. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 4,
+        "BBBCCCVVV": 52005004,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 4,
+            "BBBCCCVVV": 52005004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 5,
+            "BBBCCCVVV": 52005005,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 7,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 4,
+        "BBBCCCVVV": 52005004,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 4,
+            "BBBCCCVVV": 52005004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 5,
+            "BBBCCCVVV": 52005005,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 229,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_006-007": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "6-7",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "6-7",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 6,
+        "BBBCCCVVV": 52005006,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 6,
+            "BBBCCCVVV": 52005006,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 7,
+            "BBBCCCVVV": 52005007,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "For ‘Night’ is when people drink and get drunk and sleep away their lives. So let us not sleep away our lives like them, but rather be vigilant and sober. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "For ‘Night’ is when people drink and get drunk and sleep away their lives. So let us not sleep away our lives like them, but rather be vigilant and sober. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 6,
+        "BBBCCCVVV": 52005006,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 6,
+            "BBBCCCVVV": 52005006,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 7,
+            "BBBCCCVVV": 52005007,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 7,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_008": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "8",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "8",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Since we are of the ‘day’, let us strap on our weapons and armor and be alert: such as the ‘helmet’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Since we are of the ‘day’, let us strap on our weapons and armor and be alert: such as the ‘helmet’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "x",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "x*",
+      "Token": {
+        "Type": 6,
+        "Marker": "x",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "x*",
+        "NestlessMarker": "x",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 105,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xo",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xo*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xo",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xo*",
+        "NestlessMarker": "xo",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 110,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "5.8 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "5.8 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 114,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xq*",
+        "NestlessMarker": "xq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 118,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "‘helmet’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "‘helmet’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 122,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xt",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xt*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xt",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xt*",
+        "NestlessMarker": "xt",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 131,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Eph 6:17 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Eph 6:17 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 135,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "x*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "x*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "x*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 144,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " of our full faith in salvation, and let us put on the ‘breastplate’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " of our full faith in salvation, and let us put on the ‘breastplate’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 147,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "x",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "x*",
+      "Token": {
+        "Type": 6,
+        "Marker": "x",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "x*",
+        "NestlessMarker": "x",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 216,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xo",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xo*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xo",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xo*",
+        "NestlessMarker": "xo",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 221,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "5.8 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "5.8 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 225,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xq*",
+        "NestlessMarker": "xq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 229,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "‘breastplate’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "‘breastplate’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 233,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xt",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xt*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xt",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xt*",
+        "NestlessMarker": "xt",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 247,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Eph 6:14,16 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Eph 6:14,16 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 251,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "x*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "x*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "x*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 263,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " of our faith in and love for Christ. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " of our faith in and love for Christ. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 266,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 8,
+        "BBBCCCVVV": 52005008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 304,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_009": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "9",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "9",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 9,
+        "BBBCCCVVV": 52005009,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "You see, God did not choose us to punish us, but rather to save us through the sacrifice of the Lord Jesus Christ. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "You see, God did not choose us to punish us, but rather to save us through the sacrifice of the Lord Jesus Christ. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 9,
+        "BBBCCCVVV": 52005009,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_010": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "10",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "10",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 10,
+        "BBBCCCVVV": 52005010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Jesus Christ gave His life for us, so that when He returns, whether we are alive or dead, He will take us to heaven to live with Him there forever and ever. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Jesus Christ gave His life for us, so that when He returns, whether we are alive or dead, He will take us to heaven to live with Him there forever and ever. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 10,
+        "BBBCCCVVV": 52005010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_011": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "11",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "11",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 11,
+        "BBBCCCVVV": 52005011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Therefore, continue to encourage one another, and help each other grow in spiritual maturity, just as you have been doing. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Therefore, continue to encourage one another, and help each other grow in spiritual maturity, just as you have been doing. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 11,
+        "BBBCCCVVV": 52005011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 11,
+        "BBBCCCVVV": 52005011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 129,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Final Warning and Greetings ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Final Warning and Greetings ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 11,
+        "BBBCCCVVV": 52005011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 132,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 11,
+        "BBBCCCVVV": 52005011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 160,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_012": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "12",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "12",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Brothers and sisters, we ask you to honor the leaders of the Church of the Lord Jesus,",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Brothers and sisters, we ask you to honor the leaders of the Church of the Lord Jesus,",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "x",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "x*",
+      "Token": {
+        "Type": 6,
+        "Marker": "x",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "x*",
+        "NestlessMarker": "x",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 92,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xo",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xo*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xo",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xo*",
+        "NestlessMarker": "xo",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 97,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "5:12 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "5:12 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 101,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xq*",
+        "NestlessMarker": "xq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 106,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "honor those leaders",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "honor those leaders",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 110,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xt",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xt*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xt",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xt*",
+        "NestlessMarker": "xt",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 129,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Hebrews 13:7-17 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Hebrews 13:7-17 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 133,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "x*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "x*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "x*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 149,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " who help you grow spiritually. They give their life and limb to guide you. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " who help you grow spiritually. They give their life and limb to guide you. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 12,
+        "BBBCCCVVV": 52005012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 152,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_013-014": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "13-14",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "13-14",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Therefore, respect them with love for this ministry of theirs. ",
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 68,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Brothers and sisters, we also ask that you reconcile among yourselves in the Church. Warn those who have become lazy to work hard to earn their daily bread. Encourage those who are afraid. Help those who are weak. Continue to patiently care for all. ",
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 71,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 13,
+        "BBBCCCVVV": 52005013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 13,
+            "BBBCCCVVV": 52005013,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "1TH",
+            "BookNum": 52,
+            "ChapterNum": 5,
+            "VerseNum": 14,
+            "BBBCCCVVV": 52005014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 361,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_015": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "15",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "15",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 15,
+        "BBBCCCVVV": 52005015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Be careful! No one among you should take revenge for evil. But in every situation, always look for ways to do good, not only to those within the Church, but also to outsiders. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Be careful! No one among you should take revenge for evil. But in every situation, always look for ways to do good, not only to those within the Church, but also to outsiders. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 15,
+        "BBBCCCVVV": 52005015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_016": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "16",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "16",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 16,
+        "BBBCCCVVV": 52005016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Always be happy. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Always be happy. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 16,
+        "BBBCCCVVV": 52005016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_017": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "17",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "17",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 17,
+        "BBBCCCVVV": 52005017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Always keep praying. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Always keep praying. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 17,
+        "BBBCCCVVV": 52005017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_018": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "18",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "18",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 18,
+        "BBBCCCVVV": 52005018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "No matter what happens, always give thank to God. This is God’s will for you as a believer in Christ Jesus. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "No matter what happens, always give thank to God. This is God’s will for you as a believer in Christ Jesus. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 18,
+        "BBBCCCVVV": 52005018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 18,
+        "BBBCCCVVV": 52005018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 114,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_019": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "19",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "19",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 19,
+        "BBBCCCVVV": 52005019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Let God’s Holy Spirit work in you. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Let God’s Holy Spirit work in you. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 19,
+        "BBBCCCVVV": 52005019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_020": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "20",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "20",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 20,
+        "BBBCCCVVV": 52005020,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Don’t ignore prophecies. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Don’t ignore prophecies. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 20,
+        "BBBCCCVVV": 52005020,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_021": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "21",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "21",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 21,
+        "BBBCCCVVV": 52005021,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "But test them and all things first. If they are scripturally correct, accept them. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "But test them and all things first. If they are scripturally correct, accept them. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 21,
+        "BBBCCCVVV": 52005021,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_022": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "22",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "22",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 22,
+        "BBBCCCVVV": 52005022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "And stay away from all evil. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "And stay away from all evil. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 22,
+        "BBBCCCVVV": 52005022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 22,
+        "BBBCCCVVV": 52005022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 35,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_023": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "23",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "23",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "May the peace-giving God Himself sanctify everything in your life holy, so that you may be completely blameless ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "May the peace-giving God Himself sanctify everything in your life holy, so that you may be completely blameless ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 118,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 123,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "5:23 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "5:23 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 127,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fq*",
+        "NestlessMarker": "fq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 132,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "completely ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "completely ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 136,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 147,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "In the Greek language, “whole spirit, soul, and body.” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "In the Greek language, “whole spirit, soul, and body.” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 151,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 206,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " at the return of the Lord Jesus Christ. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " at the return of the Lord Jesus Christ. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 23,
+        "BBBCCCVVV": 52005023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 209,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_024": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "24",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "24",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 24,
+        "BBBCCCVVV": 52005024,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "And look, the God who has chosen you is faithful, and He will surely do this. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "And look, the God who has chosen you is faithful, and He will surely do this. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 24,
+        "BBBCCCVVV": 52005024,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 24,
+        "BBBCCCVVV": 52005024,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 84,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_025": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "25",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "25",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 25,
+        "BBBCCCVVV": 52005025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Brothers and sisters, continue to pray for us also. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Brothers and sisters, continue to pray for us also. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 25,
+        "BBBCCCVVV": 52005025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_026": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "26",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "26",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 26,
+        "BBBCCCVVV": 52005026,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Embrace and greet each other. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Embrace and greet each other. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 26,
+        "BBBCCCVVV": 52005026,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_027": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "27",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "27",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 27,
+        "BBBCCCVVV": 52005027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Before the Lord Jesus read this letter aloud to all the believers in the church there. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Before the Lord Jesus read this letter aloud to all the believers in the church there. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 27,
+        "BBBCCCVVV": 52005027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 27,
+        "BBBCCCVVV": 52005027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 93,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "52_005_028": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "28",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "28",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 28,
+        "BBBCCCVVV": 52005028,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "The grace of our Lord Jesus Christ be with you. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "The grace of our Lord Jesus Christ be with you. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "1TH",
+        "BookNum": 52,
+        "ChapterNum": 5,
+        "VerseNum": 28,
+        "BBBCCCVVV": 52005028,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TranslatedText.txt b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TranslatedText.txt
new file mode 100644
index 00000000..9ec3cd44
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_TranslatedText.txt
@@ -0,0 +1,2 @@
+Therefore, respect them with love for this ministry of theirs. 
+Brothers and sisters, we also ask that you reconcile among yourselves in the Church. Warn those who have become lazy to work hard to earn their daily bread. Encourage those who are afraid. Help those who are weak. Continue to patiently care for all. 
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VerseReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VerseReference.json
new file mode 100644
index 00000000..8ee11fc4
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VerseReference.json
@@ -0,0 +1,13 @@
+{
+  "BookCode": "1TH",
+  "BookNum": 52,
+  "ChapterNum": 5,
+  "VerseNum": 13,
+  "BBBCCCVVV": 52005013,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": false,
+  "AllVerses": []
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VersesReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VersesReference.json
new file mode 100644
index 00000000..75791f93
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/MultipleVersesWithFootnote/MultipleVersesWithFootnote_VersesReference.json
@@ -0,0 +1,40 @@
+{
+  "BookCode": "1TH",
+  "BookNum": 52,
+  "ChapterNum": 5,
+  "VerseNum": 13,
+  "BBBCCCVVV": 52005013,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": true,
+  "AllVerses": [
+    {
+      "BookCode": "1TH",
+      "BookNum": 52,
+      "ChapterNum": 5,
+      "VerseNum": 13,
+      "BBBCCCVVV": 52005013,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    },
+    {
+      "BookCode": "1TH",
+      "BookNum": 52,
+      "ChapterNum": 5,
+      "VerseNum": 14,
+      "BBBCCCVVV": 52005014,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensSource.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensSource.json
new file mode 100644
index 00000000..aa6c65c5
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensSource.json
@@ -0,0 +1,308 @@
+{
+  "01_001_001-002": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "1",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "परमेश्वर ने सृष्टि की रचना यूँ की: आरम्‍भ में परमेश्वर ने पृथ्‍वी की रचना की। ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "परमेश्वर ने सृष्टि की रचना यूँ की: आरम्‍भ में परमेश्वर ने पृथ्‍वी की रचना की। ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_002": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "2",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "2",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 2,
+        "BBBCCCVVV": 1001002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "परंतु उस समय वह सुनसान थी, और उस पर केवल पानी ही था। और चारों ओर कोई प्रकाश भी नहीं था। परमेश्वर की आत्‍मा उस पानी के ऊपर मंडराती थी। ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "परंतु उस समय वह सुनसान थी, और उस पर केवल पानी ही था। और चारों ओर कोई प्रकाश भी नहीं था। परमेश्वर की आत्‍मा उस पानी के ऊपर मंडराती थी। ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 2,
+        "BBBCCCVVV": 1001002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 2,
+        "BBBCCCVVV": 1001002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 139,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 2,
+        "BBBCCCVVV": 1001002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 142,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_001": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "1",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "परमेश्वर ने सृष्टि की रचना यूँ की: आरम्‍भ में परमेश्वर ने पृथ्‍वी की रचना की। ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "परमेश्वर ने सृष्टि की रचना यूँ की: आरम्‍भ में परमेश्वर ने पृथ्‍वी की रचना की। ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTarget.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTarget.json
new file mode 100644
index 00000000..9e23b275
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTarget.json
@@ -0,0 +1,2478 @@
+{
+  "01_001": {
+    "01_001_000": [
+      {
+        "Type": 0,
+        "Marker": "id",
+        "Attributes": [],
+        "Data": "GEN",
+        "EndMarker": null,
+        "Token": {
+          "Type": 0,
+          "Marker": "id",
+          "Text": null,
+          "Attributes": null,
+          "Data": "GEN",
+          "EndMarker": null,
+          "NestlessMarker": "id",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": true,
+        "IsPublishableVernacular": false
+      },
+      {
+        "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 8,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": true,
+        "IsPublishableVernacular": false
+      },
+      {
+        "Type": 3,
+        "Marker": "h",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "h",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "h*",
+          "NestlessMarker": "h",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 47,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Creation ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Creation ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 50,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "toc3",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "toc3",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "toc3*",
+          "NestlessMarker": "toc3",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 59,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Cre ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Cre ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 65,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "toc2",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "toc2",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "toc2*",
+          "NestlessMarker": "toc2",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 69,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Creation ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Creation ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 75,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "toc1",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "toc1",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "toc1*",
+          "NestlessMarker": "toc1",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 84,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Creation ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Creation ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 90,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "h",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "h",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "h*",
+          "NestlessMarker": "h",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 99,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "mt",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "mt",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "mt*",
+          "NestlessMarker": "mt",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 102,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 1,
+        "Marker": "c",
+        "Attributes": [],
+        "Data": "1",
+        "EndMarker": null,
+        "Token": {
+          "Type": 1,
+          "Marker": "c",
+          "Text": null,
+          "Attributes": null,
+          "Data": "1",
+          "EndMarker": null,
+          "NestlessMarker": "c",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 106,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 0,
+          "BBBCCCVVV": 1001000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 111,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_001-002": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "1-2",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "1-2",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 1,
+          "BBBCCCVVV": 1001001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 1,
+              "BBBCCCVVV": 1001001,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 2,
+              "BBBCCCVVV": 1001002,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 1,
+          "BBBCCCVVV": 1001001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 1,
+              "BBBCCCVVV": 1001001,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 2,
+              "BBBCCCVVV": 1001002,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 7,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 1,
+          "BBBCCCVVV": 1001001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 1,
+              "BBBCCCVVV": 1001001,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 2,
+              "BBBCCCVVV": 1001002,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 10,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_003": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "3",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "3",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 3,
+          "BBBCCCVVV": 1001003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_004": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "4",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "4",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 4,
+          "BBBCCCVVV": 1001004,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_005": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "5",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "5",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 5,
+          "BBBCCCVVV": 1001005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 5,
+          "BBBCCCVVV": 1001005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 5,
+          "BBBCCCVVV": 1001005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 8,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_006": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "6",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "6",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 6,
+          "BBBCCCVVV": 1001006,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_007": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "7",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "7",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 7,
+          "BBBCCCVVV": 1001007,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_008": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "8",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "8",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 8,
+          "BBBCCCVVV": 1001008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 8,
+          "BBBCCCVVV": 1001008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 8,
+          "BBBCCCVVV": 1001008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 8,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_009": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "9",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "9",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 9,
+          "BBBCCCVVV": 1001009,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_010": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "10",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "10",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 10,
+          "BBBCCCVVV": 1001010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 10,
+          "BBBCCCVVV": 1001010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_011": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "11",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "11",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 11,
+          "BBBCCCVVV": 1001011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_012": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "12",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "12",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 12,
+          "BBBCCCVVV": 1001012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_013": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "13",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "13",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 13,
+          "BBBCCCVVV": 1001013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 13,
+          "BBBCCCVVV": 1001013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 13,
+          "BBBCCCVVV": 1001013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_014-015": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "14-15",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "14-15",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 14,
+          "BBBCCCVVV": 1001014,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 14,
+              "BBBCCCVVV": 1001014,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 15,
+              "BBBCCCVVV": 1001015,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_016": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "16",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "16",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 16,
+          "BBBCCCVVV": 1001016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 16,
+          "BBBCCCVVV": 1001016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_017-018": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "17-18",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "17-18",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 17,
+          "BBBCCCVVV": 1001017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 17,
+              "BBBCCCVVV": 1001017,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "GEN",
+              "BookNum": 1,
+              "ChapterNum": 1,
+              "VerseNum": 18,
+              "BBBCCCVVV": 1001018,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_019": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "19",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "19",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 19,
+          "BBBCCCVVV": 1001019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 19,
+          "BBBCCCVVV": 1001019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 19,
+          "BBBCCCVVV": 1001019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_020": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "20",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "20",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 20,
+          "BBBCCCVVV": 1001020,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_021": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "21",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "21",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 21,
+          "BBBCCCVVV": 1001021,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_022": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "22",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "22",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 22,
+          "BBBCCCVVV": 1001022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_023": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "23",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "23",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 23,
+          "BBBCCCVVV": 1001023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 23,
+          "BBBCCCVVV": 1001023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 23,
+          "BBBCCCVVV": 1001023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_024": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "24",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "24",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 24,
+          "BBBCCCVVV": 1001024,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_025": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "25",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "25",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 25,
+          "BBBCCCVVV": 1001025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 25,
+          "BBBCCCVVV": 1001025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_026": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "26",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "26",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 26,
+          "BBBCCCVVV": 1001026,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_027": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "27",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "27",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 27,
+          "BBBCCCVVV": 1001027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 27,
+          "BBBCCCVVV": 1001027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_028": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "28",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "28",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 28,
+          "BBBCCCVVV": 1001028,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_029": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "29",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "29",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 29,
+          "BBBCCCVVV": 1001029,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_030": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "30",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "30",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 30,
+          "BBBCCCVVV": 1001030,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 30,
+          "BBBCCCVVV": 1001030,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "01_001_031": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "31",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "31",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "GEN",
+          "BookNum": 1,
+          "ChapterNum": 1,
+          "VerseNum": 31,
+          "BBBCCCVVV": 1001031,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ]
+  }
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTargetUpdate.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTargetUpdate.json
new file mode 100644
index 00000000..bed098dd
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TokensTargetUpdate.json
@@ -0,0 +1,2340 @@
+{
+  "01_001_000": [
+    {
+      "Type": 0,
+      "Marker": "id",
+      "Attributes": [],
+      "Data": "GEN",
+      "EndMarker": null,
+      "Token": {
+        "Type": 0,
+        "Marker": "id",
+        "Text": null,
+        "Attributes": null,
+        "Data": "GEN",
+        "EndMarker": null,
+        "NestlessMarker": "id",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "- English नौंआ जीबन सास्‍तर (from xnr) ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 8,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Type": 3,
+      "Marker": "h",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "h",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "h*",
+        "NestlessMarker": "h",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 47,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Creation ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Creation ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 50,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "toc3",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "toc3",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "toc3*",
+        "NestlessMarker": "toc3",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 59,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Cre ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Cre ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 65,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "toc2",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "toc2",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "toc2*",
+        "NestlessMarker": "toc2",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 69,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Creation ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Creation ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 75,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "toc1",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "toc1",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "toc1*",
+        "NestlessMarker": "toc1",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 84,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Creation ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Creation ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 90,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "h",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "h",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "h*",
+        "NestlessMarker": "h",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 99,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "mt",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "mt",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "mt*",
+        "NestlessMarker": "mt",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 102,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 1,
+      "Marker": "c",
+      "Attributes": [],
+      "Data": "1",
+      "EndMarker": null,
+      "Token": {
+        "Type": 1,
+        "Marker": "c",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1",
+        "EndMarker": null,
+        "NestlessMarker": "c",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 106,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 0,
+        "BBBCCCVVV": 1001000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 111,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_001": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "1",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "This is how God created the universe: In the beginning God created the earth.",
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 1,
+        "BBBCCCVVV": 1001001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_003": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "3",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "3",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 3,
+        "BBBCCCVVV": 1001003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_004": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "4",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "4",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 4,
+        "BBBCCCVVV": 1001004,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_005": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "5",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "5",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 5,
+        "BBBCCCVVV": 1001005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 5,
+        "BBBCCCVVV": 1001005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 5,
+        "BBBCCCVVV": 1001005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 8,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_006": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "6",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "6",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 6,
+        "BBBCCCVVV": 1001006,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_007": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "7",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "7",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 7,
+        "BBBCCCVVV": 1001007,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_008": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "8",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "8",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 8,
+        "BBBCCCVVV": 1001008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 8,
+        "BBBCCCVVV": 1001008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 8,
+        "BBBCCCVVV": 1001008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 8,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_009": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "9",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "9",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 9,
+        "BBBCCCVVV": 1001009,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_010": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "10",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "10",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 10,
+        "BBBCCCVVV": 1001010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 10,
+        "BBBCCCVVV": 1001010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_011": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "11",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "11",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 11,
+        "BBBCCCVVV": 1001011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_012": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "12",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "12",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 12,
+        "BBBCCCVVV": 1001012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_013": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "13",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "13",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 13,
+        "BBBCCCVVV": 1001013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 13,
+        "BBBCCCVVV": 1001013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 13,
+        "BBBCCCVVV": 1001013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_014-015": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "14-15",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "14-15",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 14,
+        "BBBCCCVVV": 1001014,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 14,
+            "BBBCCCVVV": 1001014,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 15,
+            "BBBCCCVVV": 1001015,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_016": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "16",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "16",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 16,
+        "BBBCCCVVV": 1001016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 16,
+        "BBBCCCVVV": 1001016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_017-018": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "17-18",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "17-18",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 17,
+        "BBBCCCVVV": 1001017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 17,
+            "BBBCCCVVV": 1001017,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "GEN",
+            "BookNum": 1,
+            "ChapterNum": 1,
+            "VerseNum": 18,
+            "BBBCCCVVV": 1001018,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_019": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "19",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "19",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 19,
+        "BBBCCCVVV": 1001019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 19,
+        "BBBCCCVVV": 1001019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 19,
+        "BBBCCCVVV": 1001019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_020": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "20",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "20",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 20,
+        "BBBCCCVVV": 1001020,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_021": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "21",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "21",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 21,
+        "BBBCCCVVV": 1001021,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_022": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "22",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "22",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 22,
+        "BBBCCCVVV": 1001022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_023": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "23",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "23",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 23,
+        "BBBCCCVVV": 1001023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 23,
+        "BBBCCCVVV": 1001023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 23,
+        "BBBCCCVVV": 1001023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_024": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "24",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "24",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 24,
+        "BBBCCCVVV": 1001024,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_025": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "25",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "25",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 25,
+        "BBBCCCVVV": 1001025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 25,
+        "BBBCCCVVV": 1001025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_026": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "26",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "26",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 26,
+        "BBBCCCVVV": 1001026,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_027": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "27",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "27",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 27,
+        "BBBCCCVVV": 1001027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 27,
+        "BBBCCCVVV": 1001027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_028": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "28",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "28",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 28,
+        "BBBCCCVVV": 1001028,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_029": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "29",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "29",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 29,
+        "BBBCCCVVV": 1001029,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_030": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "30",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "30",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 30,
+        "BBBCCCVVV": 1001030,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 30,
+        "BBBCCCVVV": 1001030,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "01_001_031": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "31",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "31",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "GEN",
+        "BookNum": 1,
+        "ChapterNum": 1,
+        "VerseNum": 31,
+        "BBBCCCVVV": 1001031,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TranslatedText.txt b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TranslatedText.txt
new file mode 100644
index 00000000..03cac910
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_TranslatedText.txt
@@ -0,0 +1 @@
+This is how God created the universe: In the beginning God created the earth.
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VerseReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VerseReference.json
new file mode 100644
index 00000000..d01d8b8b
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VerseReference.json
@@ -0,0 +1,13 @@
+{
+  "BookCode": "GEN",
+  "BookNum": 1,
+  "ChapterNum": 1,
+  "VerseNum": 1,
+  "BBBCCCVVV": 1001001,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": false,
+  "AllVerses": []
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VersesReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VersesReference.json
new file mode 100644
index 00000000..d01d8b8b
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/SeparateInSourceCombinedButEmptyInTarget/SeparateInSourceCombinedButEmptyInTarget_VersesReference.json
@@ -0,0 +1,13 @@
+{
+  "BookCode": "GEN",
+  "BookNum": 1,
+  "ChapterNum": 1,
+  "VerseNum": 1,
+  "BBBCCCVVV": 1001001,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": false,
+  "AllVerses": []
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs b/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
index 029e9f22..0c1b93d1 100644
--- a/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
+++ b/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
@@ -17,22 +17,25 @@ namespace TestBwdc
     public class UnitTest_PtxBackTrHelper
     {
         [Test]
+        [TestCase("Complex_SingleVerse", "Complex_MissingInTarget")]
+        [TestCase("MultipleParagraphs", "MultipleParagraphsMissingInTarget")]
+        [TestCase("MultiplePoeticParagraphs", "MultiplePoeticParagraphsMissingInTarget")]
+        [TestCase("SimpleParagraphVerse", "SimpleParagraphVerseMissingInTarget")]
         [TestCase("SingleVerse", "SingleVerseMissingInTarget")]
+        /* these are all now failing and I don't think they matter anymore. We aren't now completely 
+         * overwriting the target text with the translated text.
         [TestCase("SingleVerse", "SingleVerseMiTSplitIntoTwoParagraphs")]
         [TestCase("SingleVerse", "SingleVerseSplitIntoTwoParagraphs")]
         [TestCase("MultipleParagraphs", "MultipleParagraphsJoinedIntoOneParagraphs")]
-        [TestCase("MultipleParagraphs", "MultipleParagraphsMissingInTarget")]
         [TestCase("MultipleParagraphs", "MultipleParagraphsMiTJoinedIntoOneParagraphs")]
-        [TestCase("MultiplePoeticParagraphs", "MultiplePoeticParagraphsMissingInTarget")]
-        [TestCase("SimpleParagraphVerse", "SimpleParagraphVerseMissingInTarget")]
         [TestCase("SimpleParagraphVerse", "SimpleParagraphVerseMiTSplitIntoTwoParagraphs")]
         [TestCase("SimpleParagraphVerse", "SimpleParagraphVerseSplitIntoTwoParagraphs")]
         [TestCase("MultipleVerses", "MultipleVersesMissingInTarget")]
         [TestCase("MultipleVerses", "MultipleVersesAndParagraphsMiTJoinedIntoOneParagraphs")]
         [TestCase("MultipleVerses", "MultipleVersesAndParagraphsJoinedIntoOneParagraphs")]
-        [TestCase("Complex_SingleVerse", "Complex_MissingInTarget")]
         [TestCase("Complex_SingleVerse", "Complex_PartialOverwriteMarker")]
         [TestCase("Complex_SingleVerse", "Complex_PartialOverwriteText")]
+        */
         public void It_Can_Determine_Correct_Update_To_Target_Project(string fileNameCommon, string fileNameTestSpecific)
         {
             var usfmTokensSource = TestModel.LoadKeyedListOfTokens($"{fileNameCommon}_TokensSource.json");
@@ -48,5 +51,25 @@ public void It_Can_Determine_Correct_Update_To_Target_Project(string fileNameCom
             var strUsfmTokensTargetUpdated = TestModel.ToJson(usfmTokensTargetUpdated);
             Assert.AreEqual(strUsfmTokensTargetUpdated, strResult);
         }
+
+        [Test]
+        [TestCase("MultipleVersesWithFootnote")]
+        [TestCase("SeparateInSourceCombinedButEmptyInTarget")]
+        [TestCase("CombinedInSourceSeparateNoEmptyInTarget")]
+        public void It_Can_Determine_Correct_Update_To_Target_Project_For_Other_Cases(string fileNamePrefix)
+        {
+            var usfmTokensSource = TestModel.LoadKeyedListOfTokens($"{fileNamePrefix}_TokensSource.json");
+            var usfmTokensTarget = TestModel.LoadKeyedSortedListOfTokens($"{fileNamePrefix}_TokensTarget.json");
+            var verseReference = TestModel.LoadVerseRef($"{fileNamePrefix}_VerseReference.json");
+            var versesReference = TestModel.LoadVerseRef($"{fileNamePrefix}_VersesReference.json");
+            var translatedText = TestModel.LoadEmbeddedResourceFileAsStringExecutingAssembly($"{fileNamePrefix}_TranslatedText.txt");
+            var result = BackTranslationHelperForm.CalculateTargetTokens(verseReference, versesReference, translatedText, usfmTokensSource, usfmTokensTarget);
+
+            var strResult = TestModel.ToJson(result);
+            Assert.IsNotNull(usfmTokensTarget);
+            var usfmTokensTargetUpdated = TestModel.LoadKeyedListOfTokens($"{fileNamePrefix}_TokensTargetUpdate.json");
+            var strUsfmTokensTargetUpdated = TestModel.ToJson(usfmTokensTargetUpdated);
+            Assert.AreEqual(strUsfmTokensTargetUpdated, strResult);
+        }
     }
 }

From b1fab5cc8e34074bce3c8de72be40507b0207211 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 12 Mar 2023 19:26:47 -0500
Subject: [PATCH 24/71] added a text box to the Ptx plugin Form so that we
 could display status (e.g. differences between the number of translated lines
 between source and target and warnings about staying on verses (if the user
 clicks on another one in Ptx) if the text was modified (lest we lose changes
 unintentionally)

---
 .../BackTranslationHelperForm.Designer.cs        | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
index 32eec23e..5eda8692 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.Designer.cs
@@ -30,6 +30,7 @@ protected override void Dispose(bool disposing)
         private void InitializeComponent()
         {
             this.backTranslationHelperCtrl = new BackTranslationHelper.BackTranslationHelperCtrl();
+            this.textBoxStatus = new System.Windows.Forms.TextBox();
             this.SuspendLayout();
             // 
             // backTranslationHelperCtrl
@@ -45,14 +46,26 @@ private void InitializeComponent()
             this.backTranslationHelperCtrl.AutoSize = false;
             this.backTranslationHelperCtrl.Location = new System.Drawing.Point(0, 0);
             this.backTranslationHelperCtrl.Name = "backTranslationHelperCtrl";
-            this.backTranslationHelperCtrl.Size = new System.Drawing.Size(790, 449);
+            this.backTranslationHelperCtrl.Size = new System.Drawing.Size(800, 428);
             this.backTranslationHelperCtrl.TabIndex = 1;
             // 
+            // textBoxStatus
+            // 
+            this.textBoxStatus.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.textBoxStatus.Location = new System.Drawing.Point(0, 430);
+            this.textBoxStatus.Name = "textBoxStatus";
+            this.textBoxStatus.ReadOnly = true;
+            this.textBoxStatus.Size = new System.Drawing.Size(800, 20);
+            this.textBoxStatus.TabIndex = 2;
+            this.textBoxStatus.Click += TextBoxStatus_Click;
+            // 
             // BackTranslationHelperForm
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.ClientSize = new System.Drawing.Size(800, 450);
+            this.Controls.Add(this.textBoxStatus);
             this.Controls.Add(this.backTranslationHelperCtrl);
             this.Name = "BackTranslationHelperForm";
             this.Text = "Back Translating from {0} - {1} in verse: {2}";
@@ -67,5 +80,6 @@ private void InitializeComponent()
         #endregion
 
         private BackTranslationHelper.BackTranslationHelperCtrl backTranslationHelperCtrl;
+        private System.Windows.Forms.TextBox textBoxStatus;
     }
 }
\ No newline at end of file

From d4c1e8eeedf0070dfec94080e6665fffe22ce7a6 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sun, 12 Mar 2023 20:28:31 -0500
Subject: [PATCH 25/71] =?UTF-8?q?fix=20the=20case=20where=20Paratext=20doe?=
 =?UTF-8?q?sn=E2=80=98t=20consider=20the=20verse=20number=20in=20a=20\va..?=
 =?UTF-8?q?.\va*=20inline=20segment=20as=20publishable=20text=20(in=20need?=
 =?UTF-8?q?=20of=20being=20translated,=20which=20it=20is)=20if=20it=20come?=
 =?UTF-8?q?s=20immediately=20after=20a=20\v=20marker...?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../BackTranslationHelperForm.cs              | 29 ++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index dad90447..fc36808a 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -285,7 +285,7 @@ private string CurrentSourceData
                 }
 
                 var data = tokens.OfType<IUSFMTextToken>()
-                                 .Where(t => t.IsPublishableVernacular && IsMatchingVerse(t.VerseRef, _verseReference))
+                                 .Where(t => IsPublishableVernacular(t, tokens) && IsMatchingVerse(t.VerseRef, _verseReference))
                                  .ToDictionary(ta => ta, ta => ta.VerseRef);
 
                 if (!data.Any())
@@ -308,6 +308,33 @@ private string CurrentSourceData
             }
         }
 
+        // normally, text tokens are publishable, but there are some that aren't (e.g. the text content of an \id marker).
+        // And there's one case that seems like a bug to me, but which I've been told has worked that way forever and so
+        // there's no changing it now... vis-a-vis:
+        // the \va...\va* inline marker is defined differently depending on whether it comes immediately after a \v [num(s)] 
+        // marker than if it comes elsewhere in a verse. The relevant difference is that when it comes immediately after a \v 
+        // marker, it's value for IsPublishableVernacular (false) and IsMetadata (true) are opposite from the other case. 
+        // So... if IsPubliableVernacular is false, at least check if this is that case, and return true, so we'll try to 
+        // translate it as the others are (bkz we only send IsPub text segments for translation)
+        private bool IsPublishableVernacular(IUSFMTextToken t, List<IUSFMToken> tokens)
+        {
+            return t.IsPublishableVernacular || 
+                   (PreviousToken(t, tokens, out IUSFMMarkerToken mt) && (mt.Marker == "va") && mt.IsMetadata);
+        }
+
+        private bool PreviousToken(IUSFMTextToken t, List<IUSFMToken> tokens, out IUSFMMarkerToken previousToken)
+        {
+            var index = tokens.IndexOf(t) - 1;
+            if ((index >= 0) && (index < tokens.Count) && (tokens[index] is IUSFMMarkerToken prevToken))
+            {
+                previousToken = prevToken;
+                return true;
+            }
+
+            previousToken = null;
+            return false;
+        }
+
         private List<IUSFMMarkerToken> GetTextTokenMarkers(List<IUSFMToken> tokens, List<IUSFMTextToken> textTokens)
         {
             IUSFMMarkerToken lastMarkerToken = null;

From af2d025d5700decd5e9935bcbb04c51bb73d276f Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Mon, 13 Mar 2023 09:56:52 -0500
Subject: [PATCH 26/71] prevent an exception if the source has no data (not
 expected, but can happen -- e.g. if the person clicks Next to a verse that
 hasn't been translated in the source yet).

---
 .../BackTranslationHelperForm.cs                             | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index fc36808a..e3da5243 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -392,7 +392,10 @@ private string CurrentTargetData
 
                 var tokens = vrefTokens[bookChapterVerseKey];
                 var data = tokens.OfType<IUSFMTextToken>()
-                                 .Where(t => t.IsPublishableVernacular && IsMatchingVerse(t.VerseRef, _verseReference));
+                                 .Where(t => IsPublishableVernacular(t, tokens) && IsMatchingVerse(t.VerseRef, _verseReference));
+
+                if (!data.Any())
+                    return null;
 
                 var values = data.Select(t => t.Text);
                 var verseData = string.Join(Environment.NewLine, values);

From 35332bc127c9bda696395fb1744d04770fb16b92 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Mon, 13 Mar 2023 09:59:00 -0500
Subject: [PATCH 27/71] the same fix I did for reading source tokens and
 supporting the aberent case of a \va immediately after a \v not behaving the
 same way needed to be fixed in several other places also (the reading of
 target tokens and in the calculating of the data to write to the target
 project during 'Next' and 'Save Changes')

---
 .../BackTranslationHelperForm.cs              |    8 +-
 .../TestBwdc/TestBwdc.csproj                  |    6 +
 ...eAndTargetWithVaOverride_TokensSource.json | 1032 +++
 ...eAndTargetWithVaOverride_TokensTarget.json | 7059 +++++++++++++++++
 ...rgetWithVaOverride_TokensTargetUpdate.json | 6973 ++++++++++++++++
 ...AndTargetWithVaOverride_TranslatedText.txt |    7 +
 ...ndTargetWithVaOverride_VerseReference.json |   13 +
 ...dTargetWithVaOverride_VersesReference.json |   40 +
 .../TestBwdc/UnitTest_PtxBackTrHelper.cs      |    4 +-
 9 files changed, 15138 insertions(+), 4 deletions(-)
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensSource.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTarget.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTargetUpdate.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TranslatedText.txt
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VerseReference.json
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VersesReference.json

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index e3da5243..e1253d5b 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -316,13 +316,13 @@ private string CurrentSourceData
         // marker, it's value for IsPublishableVernacular (false) and IsMetadata (true) are opposite from the other case. 
         // So... if IsPubliableVernacular is false, at least check if this is that case, and return true, so we'll try to 
         // translate it as the others are (bkz we only send IsPub text segments for translation)
-        private bool IsPublishableVernacular(IUSFMTextToken t, List<IUSFMToken> tokens)
+        private static bool IsPublishableVernacular(IUSFMTextToken t, List<IUSFMToken> tokens)
         {
             return t.IsPublishableVernacular || 
                    (PreviousToken(t, tokens, out IUSFMMarkerToken mt) && (mt.Marker == "va") && mt.IsMetadata);
         }
 
-        private bool PreviousToken(IUSFMTextToken t, List<IUSFMToken> tokens, out IUSFMMarkerToken previousToken)
+        private static bool PreviousToken(IUSFMTextToken t, List<IUSFMToken> tokens, out IUSFMMarkerToken previousToken)
         {
             var index = tokens.IndexOf(t) - 1;
             if ((index >= 0) && (index < tokens.Count) && (tokens[index] is IUSFMMarkerToken prevToken))
@@ -630,7 +630,9 @@ public static SortedDictionary<string, List<IUSFMToken>> CalculateTargetTokens(I
             foreach (var token in tokensTarget)
             {
                 IUSFMToken updatedToken = token;
-                if ((token is IUSFMTextToken textToken) && textToken.IsPublishableVernacular && IsMatchingVerse((IVerseRef)textToken.VerseRef, verseReference))
+                if ((token is IUSFMTextToken textToken) && 
+                    IsPublishableVernacular(textToken, tokensTarget) 
+                    && IsMatchingVerse((IVerseRef)textToken.VerseRef, verseReference))
                 {
                     latestTextToken = new TextToken(textToken)
                     {
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 74191543..902c7ced 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -289,6 +289,7 @@
     <Content Include="redist\Help\TECkit_Map_Plug-in_About_box.htm" />
     <Content Include="TestFiles\BulkWordDocConverter\TestFile1.xml" />
     <Content Include="TestFiles\BulkWordDocConverter\TestFile2.xml" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceAndTargetWithVaOverride\CombinedInSourceAndTargetWithVaOverride_TranslatedText.txt" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_TranslatedText.txt" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\SeparateInSourceCombinedButEmptyInTarget\SeparateInSourceCombinedButEmptyInTarget_TranslatedText.txt" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\MultipleVersesWithFootnote\MultipleVersesWithFootnote_TranslatedText.txt" />
@@ -438,6 +439,11 @@
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_TokensTargetUpdate.json" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_VerseReference.json" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_VersesReference.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceAndTargetWithVaOverride\CombinedInSourceAndTargetWithVaOverride_TokensSource.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceAndTargetWithVaOverride\CombinedInSourceAndTargetWithVaOverride_TokensTarget.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceAndTargetWithVaOverride\CombinedInSourceAndTargetWithVaOverride_TokensTargetUpdate.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceAndTargetWithVaOverride\CombinedInSourceAndTargetWithVaOverride_VerseReference.json" />
+    <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceAndTargetWithVaOverride\CombinedInSourceAndTargetWithVaOverride_VersesReference.json" />
   </ItemGroup>
   <ItemGroup />
   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensSource.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensSource.json
new file mode 100644
index 00000000..93a99b91
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensSource.json
@@ -0,0 +1,1032 @@
+{
+  "40_018_003": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "3-4",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "3-4",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "va",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "va*",
+      "Token": {
+        "Type": 5,
+        "Marker": "va",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "va*",
+        "NestlessMarker": "va",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 7,
+      "IsSpecial": true,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Text": "3क",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "3क",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 11,
+      "IsSpecial": true,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Type": 6,
+      "Marker": "va*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "va*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "va*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 13,
+      "IsSpecial": true,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Text": " फिर कहा, ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " फिर कहा, ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 17,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "va",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "va*",
+      "Token": {
+        "Type": 5,
+        "Marker": "va",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "va*",
+        "NestlessMarker": "va",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 27,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "4",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "4",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 31,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "va*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "va*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "va*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 32,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " “मैं तुम्‍हें सच्‍चाई बताता हूँ कि जो अपने आपको दीन बनाएगा, और इस बच्‍चे के समान साफ दिल बनेगा, वही परमेश्वर के राज्‍य में सबसे बड़ा है। ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " “मैं तुम्‍हें सच्‍चाई बताता हूँ कि जो अपने आपको दीन बनाएगा, और इस बच्‍चे के समान साफ दिल बनेगा, वही परमेश्वर के राज्‍य में सबसे बड़ा है। ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 36,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "va",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "va*",
+      "Token": {
+        "Type": 5,
+        "Marker": "va",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "va*",
+        "NestlessMarker": "va",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 174,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "3ख",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "3ख",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 178,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "va*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "va*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "va*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 180,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " और जब तक तुम ऐसा नहीं करते हो, तब तक स्‍वर्ग के राज्‍य में प्रवेश नहीं कर सकते हो।” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " और जब तक तुम ऐसा नहीं करते हो, तब तक स्‍वर्ग के राज्‍य में प्रवेश नहीं कर सकते हो।” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 184,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 269,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "परख के विषय में शिक्षा ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "परख के विषय में शिक्षा ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 272,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 295,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTarget.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTarget.json
new file mode 100644
index 00000000..5d0b6733
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTarget.json
@@ -0,0 +1,7059 @@
+{
+  "40_018": {
+    "40_018_000": [
+      {
+        "Type": 1,
+        "Marker": "c",
+        "Attributes": [],
+        "Data": "18",
+        "EndMarker": null,
+        "Token": {
+          "Type": 1,
+          "Marker": "c",
+          "Text": null,
+          "Attributes": null,
+          "Data": "18",
+          "EndMarker": null,
+          "NestlessMarker": "c",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 0,
+          "BBBCCCVVV": 40018000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 0,
+          "BBBCCCVVV": 40018000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Who Is the Greatest? ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Who Is the Greatest? ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 0,
+          "BBBCCCVVV": 40018000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 0,
+          "BBBCCCVVV": 40018000,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 30,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_001": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "1",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "1",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 1,
+          "BBBCCCVVV": 40018001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "One day Jesus’ disciples asked Him, “Guru jii, who among us is the greatest in the kingdom of God?” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "One day Jesus’ disciples asked Him, “Guru jii, who among us is the greatest in the kingdom of God?” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 1,
+          "BBBCCCVVV": 40018001,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_002": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "2",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "2",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 2,
+          "BBBCCCVVV": 40018002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "He called a child to Himself, and He placed him in their midst. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "He called a child to Himself, and He placed him in their midst. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 2,
+          "BBBCCCVVV": 40018002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 2,
+          "BBBCCCVVV": 40018002,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 69,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_003-004": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "3-4",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "3-4",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "va",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "va*",
+        "Token": {
+          "Type": 5,
+          "Marker": "va",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "va*",
+          "NestlessMarker": "va",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 7,
+        "IsSpecial": true,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": true,
+        "IsPublishableVernacular": false
+      },
+      {
+        "Text": "3a",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "3a",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 11,
+        "IsSpecial": true,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": true,
+        "IsPublishableVernacular": false
+      },
+      {
+        "Type": 6,
+        "Marker": "va*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "va*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "va*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 13,
+        "IsSpecial": true,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": true,
+        "IsPublishableVernacular": false
+      },
+      {
+        "Text": " Then he said, ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " Then he said, ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 17,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "va",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "va*",
+        "Token": {
+          "Type": 5,
+          "Marker": "va",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "va*",
+          "NestlessMarker": "va",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 32,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "4",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "4",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 36,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "va*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "va*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "va*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 37,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " “I tell you the truth that whoever makes himself humble, and becomes clean-hearted like this child, is the greatest in the kingdom of God. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " “I tell you the truth that whoever makes himself humble, and becomes clean-hearted like this child, is the greatest in the kingdom of God. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 41,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "va",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "va*",
+        "Token": {
+          "Type": 5,
+          "Marker": "va",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "va*",
+          "NestlessMarker": "va",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 181,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "3b",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "3b",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 185,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "va*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "va*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "va*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 187,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " And until you make yourself like this, then you can’t enter the kingdom of heaven.” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " And until you make yourself like this, then you can’t enter the kingdom of heaven.” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 191,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 276,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Teaching about temptations ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Teaching about temptations ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 279,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 3,
+          "BBBCCCVVV": 40018003,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 3,
+              "BBBCCCVVV": 40018003,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 4,
+              "BBBCCCVVV": 40018004,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 306,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_005": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "5",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "5",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Then Jesus said, “If you lovingly accept the ones who believe on me",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Then Jesus said, “If you lovingly accept the ones who believe on me",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 72,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 77,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "18:5 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "18:5 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 81,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 86,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "keeping-faith-on-me-ones ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "keeping-faith-on-me-ones ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 90,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 115,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In the Greek language, “one such child” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In the Greek language, “one such child” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 119,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 159,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " – regardless of who they are – then this means that you are lovingly accepting me. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " – regardless of who they are – then this means that you are lovingly accepting me. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 5,
+          "BBBCCCVVV": 40018005,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 162,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_006": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "6",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "6",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 6,
+          "BBBCCCVVV": 40018006,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But if someone encourages anyone of these to sin, or tries to stop them from believing in me, then on judgement day his condition, woe, what could I tell... For him it would be better if a millstone was bound to his neck and be thrown into the ocean. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But if someone encourages anyone of these to sin, or tries to stop them from believing in me, then on judgement day his condition, woe, what could I tell... For him it would be better if a millstone was bound to his neck and be thrown into the ocean. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 6,
+          "BBBCCCVVV": 40018006,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_007": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "7",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "7",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 7,
+          "BBBCCCVVV": 40018007,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Yes, woe to those people in this world who cause other people to sin and then put hurdles in their faith on me. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Yes, woe to those people in this world who cause other people to sin and then put hurdles in their faith on me. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 7,
+          "BBBCCCVVV": 40018007,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 7,
+          "BBBCCCVVV": 40018007,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 117,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Be that as it may, in this world temptations abound. But woe to the people, through whom these temptations come, then on judgement day their condition, woe, what could I say. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Be that as it may, in this world temptations abound. But woe to the people, through whom these temptations come, then on judgement day their condition, woe, what could I say. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 7,
+          "BBBCCCVVV": 40018007,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 120,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 7,
+          "BBBCCCVVV": 40018007,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 295,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_008": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "8",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "8",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 8,
+          "BBBCCCVVV": 40018008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“For this reason, if your mind having caused sin by your hand or foot (you) are putting an obstacle in your faith, then cut it off and then throw it away. Going to the unending life of heaven having become one-handed or lame will be better than being thrown into the fire of hell with two hands and two feet! ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“For this reason, if your mind having caused sin by your hand or foot (you) are putting an obstacle in your faith, then cut it off and then throw it away. Going to the unending life of heaven having become one-handed or lame will be better than being thrown into the fire of hell with two hands and two feet! ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 8,
+          "BBBCCCVVV": 40018008,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_009": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "9",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "9",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 9,
+          "BBBCCCVVV": 40018009,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Like this, if your mind causes sin by your eyes, then take them out and throw away. Going into unending life blind will be better than being thrown into the fire of hell along with your eyes. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Like this, if your mind causes sin by your eyes, then take them out and throw away. Going into unending life blind will be better than being thrown into the fire of hell along with your eyes. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 9,
+          "BBBCCCVVV": 40018009,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 5,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 9,
+          "BBBCCCVVV": 40018009,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 197,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_010": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "10",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "10",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 10,
+          "BBBCCCVVV": 40018010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“I am telling you that those who have faith in me like children, their guardian angels are always near my Father God in heaven. For this reason, don’t consider any among them to be inferior. ⌊ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“I am telling you that those who have faith in me like children, their guardian angels are always near my Father God in heaven. For this reason, don’t consider any among them to be inferior. ⌊ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 10,
+          "BBBCCCVVV": 40018010,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_011": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "11",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "11",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Look, the Son of Man has come to save such lost wandering ones.”⌋",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Look, the Son of Man has come to save such lost wandering ones.”⌋",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 71,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 76,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "18:11 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "18:11 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 80,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 86,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "This line was added in later books. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "This line was added in later books. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 90,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 126,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 129,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 130,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "The parable of the lost sheep ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "The parable of the lost sheep ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 133,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "pc",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "pc",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "pc*",
+          "NestlessMarker": "pc",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 163,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Then Jesus wanted to explain to his disciples about how happy God becomes when even one wandering person repents of his sins. For this reason, he shared this parable. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Then Jesus wanted to explain to his disciples about how happy God becomes when even one wandering person repents of his sins. For this reason, he shared this parable. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 167,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 11,
+          "BBBCCCVVV": 40018011,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 334,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_012": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "12",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "12",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 12,
+          "BBBCCCVVV": 40018012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Then Jesus said, “Suppose that someone had a hundred sheep, and if one of them was lost, would he leave the ninety-nine sheep and go to search for that one lost sheep, or not? He would definitely go! ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Then Jesus said, “Suppose that someone had a hundred sheep, and if one of them was lost, would he leave the ninety-nine sheep and go to search for that one lost sheep, or not? He would definitely go! ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 12,
+          "BBBCCCVVV": 40018012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 12,
+          "BBBCCCVVV": 40018012,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 206,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_013": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "13",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "13",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 13,
+          "BBBCCCVVV": 40018013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“And I tell you the truth that when he finds that sheep, then he becomes more happy about it than of the ninety-nine sheep that were not lost. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“And I tell you the truth that when he finds that sheep, then he becomes more happy about it than of the ninety-nine sheep that were not lost. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 13,
+          "BBBCCCVVV": 40018013,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_014": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "14",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "14",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 14,
+          "BBBCCCVVV": 40018014,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In this very way, Father God also wants that not even one of his devotees would fall away.” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In this very way, Father God also wants that not even one of his devotees would fall away.” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 14,
+          "BBBCCCVVV": 40018014,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 14,
+          "BBBCCCVVV": 40018014,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 98,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "The method for correction ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "The method for correction ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 14,
+          "BBBCCCVVV": 40018014,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 101,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 14,
+          "BBBCCCVVV": 40018014,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 127,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_015": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "15",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "15",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Then Jesus said, “If anyone from the group does an evil deed or sins,",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Then Jesus said, “If anyone from the group does an evil deed or sins,",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 75,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 80,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "18:15 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "18:15 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 84,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 90,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "does evil acts or sins ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "does evil acts or sins ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 94,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 117,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In some Greek manuscripts it is written here, “sins against you”. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In some Greek manuscripts it is written here, “sins against you”. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 121,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 187,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " then take him aside alone and try to correct him. If he listens to you, then you have won his heart. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " then take him aside alone and try to correct him. If he listens to you, then you have won his heart. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 15,
+          "BBBCCCVVV": 40018015,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 190,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_016": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "16",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "16",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 16,
+          "BBBCCCVVV": 40018016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But if he doesn’t listen to you, then bring two or three people from the church, so that they may be witness of this thing that you tried to correct him. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But if he doesn’t listen to you, then bring two or three people from the church, so that they may be witness of this thing that you tried to correct him. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 16,
+          "BBBCCCVVV": 40018016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 16,
+          "BBBCCCVVV": 40018016,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 160,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_017": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "17",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "17",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "If he doesn’t listen to them also, then you tell it before the church. If he doesn’t listen to them, then excommunicate him from the church. Keep no relation with those who despite these steps don’t repent.",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "If he doesn’t listen to them also, then you tell it before the church. If he doesn’t listen to them, then excommunicate him from the church. Keep no relation with those who despite these steps don’t repent.",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 212,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 217,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "18:17 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "18:17 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 221,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 227,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "despite these steps don’t repent ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "despite these steps don’t repent ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 231,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 264,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In Greek language, “Gentiles and road.tax takers” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In Greek language, “Gentiles and road.tax takers” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 268,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 318,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 321,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 17,
+          "BBBCCCVVV": 40018017,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 322,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_018": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "18",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "18",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“Bind this thing in your knot: the key of authority of God’s kingdom which you have being in the group of believers,",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“Bind this thing in your knot: the key of authority of God’s kingdom which you have being in the group of believers,",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "x",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "x*",
+        "Token": {
+          "Type": 6,
+          "Marker": "x",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "x*",
+          "NestlessMarker": "x",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 122,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xo",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xo*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xo",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xo*",
+          "NestlessMarker": "xo",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 127,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "18.18 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "18.18 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 131,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "xt",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "xt*",
+        "Token": {
+          "Type": 5,
+          "Marker": "xt",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "xt*",
+          "NestlessMarker": "xt",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 137,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Matt 16:19 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Matt 16:19 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 141,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "x*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "x*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "x*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 152,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " with that whatever you lock with that key on earth, God will have already locked",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " with that whatever you lock with that key on earth, God will have already locked",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 155,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 236,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 241,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "18:18 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "18:18 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 245,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 251,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "will have already closed ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "will have already closed ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 255,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 280,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "In the Greek language, the construction of this sentence shows that God has already done this thing from heaven beforehand. The sentence below, \"will have already opened\" also has this form. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "In the Greek language, the construction of this sentence shows that God has already done this thing from heaven beforehand. The sentence below, \"will have already opened\" also has this form. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 284,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 475,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " them from heaven. And whatever that you unlock in this earth, God will have already unlocked them from heaven. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " them from heaven. And whatever that you unlock in this earth, God will have already unlocked them from heaven. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 478,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 18,
+          "BBBCCCVVV": 40018018,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 590,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_019-020": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "19-20",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "19-20",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 19,
+          "BBBCCCVVV": 40018019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 19,
+              "BBBCCCVVV": 40018019,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 20,
+              "BBBCCCVVV": 40018020,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“I say to you, wherever two people gather together in my name, I am with them. For this reason, if two people, having become agreed, pray about something, then whatever you ask for from my Father God in heaven, that God will fulfill.” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“I say to you, wherever two people gather together in my name, I am with them. For this reason, if two people, having become agreed, pray about something, then whatever you ask for from my Father God in heaven, that God will fulfill.” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 19,
+          "BBBCCCVVV": 40018019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 19,
+              "BBBCCCVVV": 40018019,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 20,
+              "BBBCCCVVV": 40018020,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 9,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 19,
+          "BBBCCCVVV": 40018019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 19,
+              "BBBCCCVVV": 40018019,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 20,
+              "BBBCCCVVV": 40018020,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 244,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "How many times we should forgive? ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "How many times we should forgive? ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 19,
+          "BBBCCCVVV": 40018019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 19,
+              "BBBCCCVVV": 40018019,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 20,
+              "BBBCCCVVV": 40018020,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 247,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 19,
+          "BBBCCCVVV": 40018019,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": true,
+          "AllVerses": [
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 19,
+              "BBBCCCVVV": 40018019,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            },
+            {
+              "BookCode": "MAT",
+              "BookNum": 40,
+              "ChapterNum": 18,
+              "VerseNum": 20,
+              "BBBCCCVVV": 40018020,
+              "Versification": {
+                "Type": 4,
+                "IsCustomized": false
+              },
+              "RepresentsMultipleVerses": false,
+              "AllVerses": []
+            }
+          ]
+        },
+        "VerseOffset": 281,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_021": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "21",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "21",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 21,
+          "BBBCCCVVV": 40018021,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Then Peter came to Jesus and asked, “Lord, if someone were to do some wrong to me, then how many times should I forgive him? Is seven times enough? ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Then Peter came to Jesus and asked, “Lord, if someone were to do some wrong to me, then how many times should I forgive him? Is seven times enough? ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 21,
+          "BBBCCCVVV": 40018021,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_022": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "22",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "22",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Jesus replied, “Not seven times, but rather I tell you that you should forgive seventy-seven times.” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Jesus replied, “Not seven times, but rather I tell you that you should forgive seventy-seven times.” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 5,
+        "Marker": "f",
+        "Attributes": [],
+        "Data": "+",
+        "EndMarker": "f*",
+        "Token": {
+          "Type": 6,
+          "Marker": "f",
+          "Text": null,
+          "Attributes": null,
+          "Data": "+",
+          "EndMarker": "f*",
+          "NestlessMarker": "f",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 107,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fr",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fr*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fr",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fr*",
+          "NestlessMarker": "fr",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 112,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "18:22 ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "18:22 ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 116,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "fq",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "fq*",
+        "Token": {
+          "Type": 5,
+          "Marker": "fq",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "fq*",
+          "NestlessMarker": "fq",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 122,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "seventy-seven times ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "seventy-seven times ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 126,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 4,
+        "Marker": "ft",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": "ft*",
+        "Token": {
+          "Type": 5,
+          "Marker": "ft",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "ft*",
+          "NestlessMarker": "ft",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 146,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Or \"more than even seven times seventy\". This is a Hebrew idiom, which means ‘unlimited number of time.’. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Or \"more than even seven times seventy\". This is a Hebrew idiom, which means ‘unlimited number of time.’. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 150,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": true,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 6,
+        "Marker": "f*",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 7,
+          "Marker": "f*",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": "f*",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 256,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": " ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": " ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 259,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "s",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "s",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "s*",
+          "NestlessMarker": "s",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 260,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "The parable of asking for and giving forgiveness ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "The parable of asking for and giving forgiveness ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 263,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": false,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 22,
+          "BBBCCCVVV": 40018022,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 312,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_023": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "23",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "23",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 23,
+          "BBBCCCVVV": 40018023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“For this reason, what forgiving is in the view of God can be understood through this parable: There was a king. He wanted to settle accounts with his servants, to whom he had given loans. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“For this reason, what forgiving is in the view of God can be understood through this parable: There was a king. He wanted to settle accounts with his servants, to whom he had given loans. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 23,
+          "BBBCCCVVV": 40018023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 23,
+          "BBBCCCVVV": 40018023,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 195,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_024": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "24",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "24",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 24,
+          "BBBCCCVVV": 40018024,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "When he began to take the account sheets, then one such debtor was presented before him who owed him several crore rupees. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "When he began to take the account sheets, then one such debtor was presented before him who owed him several crore rupees. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 24,
+          "BBBCCCVVV": 40018024,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_025": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "25",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "25",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 25,
+          "BBBCCCVVV": 40018025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But he had no resources to pay back the money. So the king gave this command, ‘Let his wife, children and everything he has be sold to repay the debt.’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But he had no resources to pay back the money. So the king gave this command, ‘Let his wife, children and everything he has be sold to repay the debt.’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 25,
+          "BBBCCCVVV": 40018025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 25,
+          "BBBCCCVVV": 40018025,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 158,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_026": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "26",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "26",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 26,
+          "BBBCCCVVV": 40018026,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“Then that debtor fell at the king’s feet and begged, ‘Sir, please give me more time, I will repay it little by little.’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“Then that debtor fell at the king’s feet and begged, ‘Sir, please give me more time, I will repay it little by little.’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 26,
+          "BBBCCCVVV": 40018026,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_027": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "27",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "27",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 27,
+          "BBBCCCVVV": 40018027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "That king had so much compassion on him that he forgave his entire debt and said, ‘Now you may go.’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "That king had so much compassion on him that he forgave his entire debt and said, ‘Now you may go.’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 27,
+          "BBBCCCVVV": 40018027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 27,
+          "BBBCCCVVV": 40018027,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 106,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_028": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "28",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "28",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 28,
+          "BBBCCCVVV": 40018028,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“When he went out, he met another servant of the king, to whom the forgiven servant had given a loan of a some rupees. But he grabbed him by the throat and said, ‘You pay back my loan right now!’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“When he went out, he met another servant of the king, to whom the forgiven servant had given a loan of a some rupees. But he grabbed him by the throat and said, ‘You pay back my loan right now!’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 28,
+          "BBBCCCVVV": 40018028,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 28,
+          "BBBCCCVVV": 40018028,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 202,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_029": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "29",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "29",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 29,
+          "BBBCCCVVV": 40018029,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“He fell down at his feet and begged, ‘Sir, please give me some time, I will pay it back little by little.’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“He fell down at his feet and begged, ‘Sir, please give me some time, I will pay it back little by little.’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 29,
+          "BBBCCCVVV": 40018029,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_030": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "30",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "30",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 30,
+          "BBBCCCVVV": 40018030,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "But his fellow servant didn’t accept his proposal. And he had him thrown into jail, and said, ‘You will rot here until fully repaying the loan.’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "But his fellow servant didn’t accept his proposal. And he had him thrown into jail, and said, ‘You will rot here until fully repaying the loan.’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 30,
+          "BBBCCCVVV": 40018030,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 30,
+          "BBBCCCVVV": 40018030,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 151,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_031": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "31",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "31",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 31,
+          "BBBCCCVVV": 40018031,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“But there were other servants of the king who saw this and became very distressed. And they went and told the king what had happened. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“But there were other servants of the king who saw this and became very distressed. And they went and told the king what had happened. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 31,
+          "BBBCCCVVV": 40018031,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_032": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "32",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "32",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 32,
+          "BBBCCCVVV": 40018032,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "So the king called that unmerciful servant and said, ‘O evil fool, you requested of me, and I forgave your entire debt. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "So the king called that unmerciful servant and said, ‘O evil fool, you requested of me, and I forgave your entire debt. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 32,
+          "BBBCCCVVV": 40018032,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_033": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "33",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "33",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 33,
+          "BBBCCCVVV": 40018033,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "So, if I could have so much mercy on you, shouldn’t you have had mercy on your debtor also?’ ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "So, if I could have so much mercy on you, shouldn’t you have had mercy on your debtor also?’ ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 33,
+          "BBBCCCVVV": 40018033,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Type": 3,
+        "Marker": "p",
+        "Attributes": [],
+        "Data": null,
+        "EndMarker": null,
+        "Token": {
+          "Type": 4,
+          "Marker": "p",
+          "Text": null,
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": "p*",
+          "NestlessMarker": "p",
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 33,
+          "BBBCCCVVV": 40018033,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 99,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_034": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "34",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "34",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 34,
+          "BBBCCCVVV": 40018034,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "“The king was so angry with him that he gave him this punishment, ‘He is to rot in jail, until he has repaid the whole debt. ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "“The king was so angry with him that he gave him this punishment, ‘He is to rot in jail, until he has repaid the whole debt. ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 34,
+          "BBBCCCVVV": 40018034,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ],
+    "40_018_035": [
+      {
+        "Type": 2,
+        "Marker": "v",
+        "Attributes": [],
+        "Data": "35",
+        "EndMarker": null,
+        "Token": {
+          "Type": 2,
+          "Marker": "v",
+          "Text": null,
+          "Attributes": null,
+          "Data": "35",
+          "EndMarker": null,
+          "NestlessMarker": "v",
+          "HasData": true,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 35,
+          "BBBCCCVVV": 40018035,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 0,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      },
+      {
+        "Text": "Like this, if someone asks forgiveness from you, but you don’t forgive them with a full heart, then your Father God in heaven will also do to you.” ",
+        "Token": {
+          "Type": 3,
+          "Marker": null,
+          "Text": "Like this, if someone asks forgiveness from you, but you don’t forgive them with a full heart, then your Father God in heaven will also do to you.” ",
+          "Attributes": null,
+          "Data": null,
+          "EndMarker": null,
+          "NestlessMarker": null,
+          "HasData": false,
+          "HasAttributes": false,
+          "HasNonDefaultAttribute": false
+        },
+        "VerseRef": {
+          "BookCode": "MAT",
+          "BookNum": 40,
+          "ChapterNum": 18,
+          "VerseNum": 35,
+          "BBBCCCVVV": 40018035,
+          "Versification": {
+            "Type": 4,
+            "IsCustomized": false
+          },
+          "RepresentsMultipleVerses": false,
+          "AllVerses": []
+        },
+        "VerseOffset": 6,
+        "IsSpecial": false,
+        "IsFigure": false,
+        "IsFootnoteOrCrossReference": false,
+        "IsScripture": true,
+        "IsMetadata": false,
+        "IsPublishableVernacular": true
+      }
+    ]
+  }
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTargetUpdate.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTargetUpdate.json
new file mode 100644
index 00000000..c0c4801d
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TokensTargetUpdate.json
@@ -0,0 +1,6973 @@
+{
+  "40_018_000": [
+    {
+      "Type": 1,
+      "Marker": "c",
+      "Attributes": [],
+      "Data": "18",
+      "EndMarker": null,
+      "Token": {
+        "Type": 1,
+        "Marker": "c",
+        "Text": null,
+        "Attributes": null,
+        "Data": "18",
+        "EndMarker": null,
+        "NestlessMarker": "c",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 0,
+        "BBBCCCVVV": 40018000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 0,
+        "BBBCCCVVV": 40018000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Who Is the Greatest? ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Who Is the Greatest? ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 0,
+        "BBBCCCVVV": 40018000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 0,
+        "BBBCCCVVV": 40018000,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 30,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_001": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "1",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "1",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 1,
+        "BBBCCCVVV": 40018001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "One day Jesus’ disciples asked Him, “Guru jii, who among us is the greatest in the kingdom of God?” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "One day Jesus’ disciples asked Him, “Guru jii, who among us is the greatest in the kingdom of God?” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 1,
+        "BBBCCCVVV": 40018001,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_002": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "2",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "2",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 2,
+        "BBBCCCVVV": 40018002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "He called a child to Himself, and He placed him in their midst. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "He called a child to Himself, and He placed him in their midst. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 2,
+        "BBBCCCVVV": 40018002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 2,
+        "BBBCCCVVV": 40018002,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 69,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_003-004": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "3-4",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "3-4",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "va",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "va*",
+      "Token": {
+        "Type": 5,
+        "Marker": "va",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "va*",
+        "NestlessMarker": "va",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 7,
+      "IsSpecial": true,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Text": "3a",
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 11,
+      "IsSpecial": true,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Type": 6,
+      "Marker": "va*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "va*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "va*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 13,
+      "IsSpecial": true,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": true,
+      "IsPublishableVernacular": false
+    },
+    {
+      "Text": " Then He said, ",
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 17,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "va",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "va*",
+      "Token": {
+        "Type": 5,
+        "Marker": "va",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "va*",
+        "NestlessMarker": "va",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 27,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "4",
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 31,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "va*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "va*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "va*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 32,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " “I tell you the truth, whoever humbles himself and has a pure heart like this child will be the greatest in God’s kingdom. ",
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 36,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "va",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "va*",
+      "Token": {
+        "Type": 5,
+        "Marker": "va",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "va*",
+        "NestlessMarker": "va",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 174,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "3b",
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 178,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "va*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "va*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "va*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 180,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " And unless you do this, you cannot enter the kingdom of heaven.” ",
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 184,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 269,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Teaching About Temptation ",
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 272,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 3,
+        "BBBCCCVVV": 40018003,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 3,
+            "BBBCCCVVV": 40018003,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 4,
+            "BBBCCCVVV": 40018004,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 295,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_005": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "5",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "5",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Then Jesus said, “If you lovingly accept the ones who believe on me",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Then Jesus said, “If you lovingly accept the ones who believe on me",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 72,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 77,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "18:5 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "18:5 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 81,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fq*",
+        "NestlessMarker": "fq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 86,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "keeping-faith-on-me-ones ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "keeping-faith-on-me-ones ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 90,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 115,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "In the Greek language, “one such child” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "In the Greek language, “one such child” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 119,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 159,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " – regardless of who they are – then this means that you are lovingly accepting me. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " – regardless of who they are – then this means that you are lovingly accepting me. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 5,
+        "BBBCCCVVV": 40018005,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 162,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_006": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "6",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "6",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 6,
+        "BBBCCCVVV": 40018006,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "But if someone encourages anyone of these to sin, or tries to stop them from believing in me, then on judgement day his condition, woe, what could I tell... For him it would be better if a millstone was bound to his neck and be thrown into the ocean. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "But if someone encourages anyone of these to sin, or tries to stop them from believing in me, then on judgement day his condition, woe, what could I tell... For him it would be better if a millstone was bound to his neck and be thrown into the ocean. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 6,
+        "BBBCCCVVV": 40018006,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_007": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "7",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "7",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 7,
+        "BBBCCCVVV": 40018007,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Yes, woe to those people in this world who cause other people to sin and then put hurdles in their faith on me. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Yes, woe to those people in this world who cause other people to sin and then put hurdles in their faith on me. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 7,
+        "BBBCCCVVV": 40018007,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 7,
+        "BBBCCCVVV": 40018007,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 117,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Be that as it may, in this world temptations abound. But woe to the people, through whom these temptations come, then on judgement day their condition, woe, what could I say. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Be that as it may, in this world temptations abound. But woe to the people, through whom these temptations come, then on judgement day their condition, woe, what could I say. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 7,
+        "BBBCCCVVV": 40018007,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 120,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 7,
+        "BBBCCCVVV": 40018007,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 295,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_008": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "8",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "8",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 8,
+        "BBBCCCVVV": 40018008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“For this reason, if your mind having caused sin by your hand or foot (you) are putting an obstacle in your faith, then cut it off and then throw it away. Going to the unending life of heaven having become one-handed or lame will be better than being thrown into the fire of hell with two hands and two feet! ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“For this reason, if your mind having caused sin by your hand or foot (you) are putting an obstacle in your faith, then cut it off and then throw it away. Going to the unending life of heaven having become one-handed or lame will be better than being thrown into the fire of hell with two hands and two feet! ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 8,
+        "BBBCCCVVV": 40018008,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_009": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "9",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "9",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 9,
+        "BBBCCCVVV": 40018009,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Like this, if your mind causes sin by your eyes, then take them out and throw away. Going into unending life blind will be better than being thrown into the fire of hell along with your eyes. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Like this, if your mind causes sin by your eyes, then take them out and throw away. Going into unending life blind will be better than being thrown into the fire of hell along with your eyes. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 9,
+        "BBBCCCVVV": 40018009,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 5,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 9,
+        "BBBCCCVVV": 40018009,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 197,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_010": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "10",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "10",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 10,
+        "BBBCCCVVV": 40018010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“I am telling you that those who have faith in me like children, their guardian angels are always near my Father God in heaven. For this reason, don’t consider any among them to be inferior. ⌊ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“I am telling you that those who have faith in me like children, their guardian angels are always near my Father God in heaven. For this reason, don’t consider any among them to be inferior. ⌊ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 10,
+        "BBBCCCVVV": 40018010,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_011": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "11",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "11",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Look, the Son of Man has come to save such lost wandering ones.”⌋",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Look, the Son of Man has come to save such lost wandering ones.”⌋",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 71,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 76,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "18:11 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "18:11 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 80,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 86,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "This line was added in later books. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "This line was added in later books. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 90,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 126,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 129,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 130,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "The parable of the lost sheep ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "The parable of the lost sheep ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 133,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "pc",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "pc",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "pc*",
+        "NestlessMarker": "pc",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 163,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Then Jesus wanted to explain to his disciples about how happy God becomes when even one wandering person repents of his sins. For this reason, he shared this parable. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Then Jesus wanted to explain to his disciples about how happy God becomes when even one wandering person repents of his sins. For this reason, he shared this parable. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 167,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 11,
+        "BBBCCCVVV": 40018011,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 334,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_012": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "12",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "12",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 12,
+        "BBBCCCVVV": 40018012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Then Jesus said, “Suppose that someone had a hundred sheep, and if one of them was lost, would he leave the ninety-nine sheep and go to search for that one lost sheep, or not? He would definitely go! ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Then Jesus said, “Suppose that someone had a hundred sheep, and if one of them was lost, would he leave the ninety-nine sheep and go to search for that one lost sheep, or not? He would definitely go! ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 12,
+        "BBBCCCVVV": 40018012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 12,
+        "BBBCCCVVV": 40018012,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 206,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_013": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "13",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "13",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 13,
+        "BBBCCCVVV": 40018013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“And I tell you the truth that when he finds that sheep, then he becomes more happy about it than of the ninety-nine sheep that were not lost. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“And I tell you the truth that when he finds that sheep, then he becomes more happy about it than of the ninety-nine sheep that were not lost. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 13,
+        "BBBCCCVVV": 40018013,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_014": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "14",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "14",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 14,
+        "BBBCCCVVV": 40018014,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "In this very way, Father God also wants that not even one of his devotees would fall away.” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "In this very way, Father God also wants that not even one of his devotees would fall away.” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 14,
+        "BBBCCCVVV": 40018014,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 14,
+        "BBBCCCVVV": 40018014,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 98,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "The method for correction ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "The method for correction ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 14,
+        "BBBCCCVVV": 40018014,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 101,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 14,
+        "BBBCCCVVV": 40018014,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 127,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_015": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "15",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "15",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Then Jesus said, “If anyone from the group does an evil deed or sins,",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Then Jesus said, “If anyone from the group does an evil deed or sins,",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 75,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 80,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "18:15 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "18:15 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 84,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fq*",
+        "NestlessMarker": "fq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 90,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "does evil acts or sins ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "does evil acts or sins ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 94,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 117,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "In some Greek manuscripts it is written here, “sins against you”. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "In some Greek manuscripts it is written here, “sins against you”. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 121,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 187,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " then take him aside alone and try to correct him. If he listens to you, then you have won his heart. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " then take him aside alone and try to correct him. If he listens to you, then you have won his heart. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 15,
+        "BBBCCCVVV": 40018015,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 190,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_016": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "16",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "16",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 16,
+        "BBBCCCVVV": 40018016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "But if he doesn’t listen to you, then bring two or three people from the church, so that they may be witness of this thing that you tried to correct him. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "But if he doesn’t listen to you, then bring two or three people from the church, so that they may be witness of this thing that you tried to correct him. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 16,
+        "BBBCCCVVV": 40018016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 16,
+        "BBBCCCVVV": 40018016,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 160,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_017": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "17",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "17",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "If he doesn’t listen to them also, then you tell it before the church. If he doesn’t listen to them, then excommunicate him from the church. Keep no relation with those who despite these steps don’t repent.",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "If he doesn’t listen to them also, then you tell it before the church. If he doesn’t listen to them, then excommunicate him from the church. Keep no relation with those who despite these steps don’t repent.",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 212,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 217,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "18:17 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "18:17 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 221,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fq*",
+        "NestlessMarker": "fq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 227,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "despite these steps don’t repent ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "despite these steps don’t repent ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 231,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 264,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "In Greek language, “Gentiles and road.tax takers” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "In Greek language, “Gentiles and road.tax takers” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 268,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 318,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 321,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 17,
+        "BBBCCCVVV": 40018017,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 322,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_018": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "18",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "18",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“Bind this thing in your knot: the key of authority of God’s kingdom which you have being in the group of believers,",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“Bind this thing in your knot: the key of authority of God’s kingdom which you have being in the group of believers,",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "x",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "x*",
+      "Token": {
+        "Type": 6,
+        "Marker": "x",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "x*",
+        "NestlessMarker": "x",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 122,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xo",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xo*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xo",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xo*",
+        "NestlessMarker": "xo",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 127,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "18.18 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "18.18 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 131,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "xt",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "xt*",
+      "Token": {
+        "Type": 5,
+        "Marker": "xt",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "xt*",
+        "NestlessMarker": "xt",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 137,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Matt 16:19 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Matt 16:19 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 141,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "x*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "x*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "x*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 152,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " with that whatever you lock with that key on earth, God will have already locked",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " with that whatever you lock with that key on earth, God will have already locked",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 155,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 236,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 241,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "18:18 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "18:18 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 245,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fq*",
+        "NestlessMarker": "fq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 251,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "will have already closed ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "will have already closed ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 255,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 280,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "In the Greek language, the construction of this sentence shows that God has already done this thing from heaven beforehand. The sentence below, \"will have already opened\" also has this form. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "In the Greek language, the construction of this sentence shows that God has already done this thing from heaven beforehand. The sentence below, \"will have already opened\" also has this form. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 284,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 475,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " them from heaven. And whatever that you unlock in this earth, God will have already unlocked them from heaven. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " them from heaven. And whatever that you unlock in this earth, God will have already unlocked them from heaven. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 478,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 18,
+        "BBBCCCVVV": 40018018,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 590,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_019-020": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "19-20",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "19-20",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 19,
+        "BBBCCCVVV": 40018019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 19,
+            "BBBCCCVVV": 40018019,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 20,
+            "BBBCCCVVV": 40018020,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“I say to you, wherever two people gather together in my name, I am with them. For this reason, if two people, having become agreed, pray about something, then whatever you ask for from my Father God in heaven, that God will fulfill.” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“I say to you, wherever two people gather together in my name, I am with them. For this reason, if two people, having become agreed, pray about something, then whatever you ask for from my Father God in heaven, that God will fulfill.” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 19,
+        "BBBCCCVVV": 40018019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 19,
+            "BBBCCCVVV": 40018019,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 20,
+            "BBBCCCVVV": 40018020,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 9,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 19,
+        "BBBCCCVVV": 40018019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 19,
+            "BBBCCCVVV": 40018019,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 20,
+            "BBBCCCVVV": 40018020,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 244,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "How many times we should forgive? ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "How many times we should forgive? ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 19,
+        "BBBCCCVVV": 40018019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 19,
+            "BBBCCCVVV": 40018019,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 20,
+            "BBBCCCVVV": 40018020,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 247,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 19,
+        "BBBCCCVVV": 40018019,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": true,
+        "AllVerses": [
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 19,
+            "BBBCCCVVV": 40018019,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          },
+          {
+            "BookCode": "MAT",
+            "BookNum": 40,
+            "ChapterNum": 18,
+            "VerseNum": 20,
+            "BBBCCCVVV": 40018020,
+            "Versification": {
+              "Type": 4,
+              "IsCustomized": false
+            },
+            "RepresentsMultipleVerses": false,
+            "AllVerses": []
+          }
+        ]
+      },
+      "VerseOffset": 281,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_021": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "21",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "21",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 21,
+        "BBBCCCVVV": 40018021,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Then Peter came to Jesus and asked, “Lord, if someone were to do some wrong to me, then how many times should I forgive him? Is seven times enough? ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Then Peter came to Jesus and asked, “Lord, if someone were to do some wrong to me, then how many times should I forgive him? Is seven times enough? ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 21,
+        "BBBCCCVVV": 40018021,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_022": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "22",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "22",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Jesus replied, “Not seven times, but rather I tell you that you should forgive seventy-seven times.” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Jesus replied, “Not seven times, but rather I tell you that you should forgive seventy-seven times.” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 5,
+      "Marker": "f",
+      "Attributes": [],
+      "Data": "+",
+      "EndMarker": "f*",
+      "Token": {
+        "Type": 6,
+        "Marker": "f",
+        "Text": null,
+        "Attributes": null,
+        "Data": "+",
+        "EndMarker": "f*",
+        "NestlessMarker": "f",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 107,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fr",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fr*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fr",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fr*",
+        "NestlessMarker": "fr",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 112,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "18:22 ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "18:22 ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 116,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "fq",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "fq*",
+      "Token": {
+        "Type": 5,
+        "Marker": "fq",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "fq*",
+        "NestlessMarker": "fq",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 122,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "seventy-seven times ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "seventy-seven times ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 126,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 4,
+      "Marker": "ft",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": "ft*",
+      "Token": {
+        "Type": 5,
+        "Marker": "ft",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "ft*",
+        "NestlessMarker": "ft",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 146,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Or \"more than even seven times seventy\". This is a Hebrew idiom, which means ‘unlimited number of time.’. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Or \"more than even seven times seventy\". This is a Hebrew idiom, which means ‘unlimited number of time.’. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 150,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": true,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 6,
+      "Marker": "f*",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 7,
+        "Marker": "f*",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": "f*",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 256,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": " ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": " ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 259,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "s",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "s",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "s*",
+        "NestlessMarker": "s",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 260,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "The parable of asking for and giving forgiveness ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "The parable of asking for and giving forgiveness ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 263,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": false,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 22,
+        "BBBCCCVVV": 40018022,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 312,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_023": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "23",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "23",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 23,
+        "BBBCCCVVV": 40018023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“For this reason, what forgiving is in the view of God can be understood through this parable: There was a king. He wanted to settle accounts with his servants, to whom he had given loans. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“For this reason, what forgiving is in the view of God can be understood through this parable: There was a king. He wanted to settle accounts with his servants, to whom he had given loans. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 23,
+        "BBBCCCVVV": 40018023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 23,
+        "BBBCCCVVV": 40018023,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 195,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_024": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "24",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "24",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 24,
+        "BBBCCCVVV": 40018024,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "When he began to take the account sheets, then one such debtor was presented before him who owed him several crore rupees. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "When he began to take the account sheets, then one such debtor was presented before him who owed him several crore rupees. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 24,
+        "BBBCCCVVV": 40018024,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_025": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "25",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "25",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 25,
+        "BBBCCCVVV": 40018025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "But he had no resources to pay back the money. So the king gave this command, ‘Let his wife, children and everything he has be sold to repay the debt.’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "But he had no resources to pay back the money. So the king gave this command, ‘Let his wife, children and everything he has be sold to repay the debt.’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 25,
+        "BBBCCCVVV": 40018025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 25,
+        "BBBCCCVVV": 40018025,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 158,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_026": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "26",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "26",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 26,
+        "BBBCCCVVV": 40018026,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“Then that debtor fell at the king’s feet and begged, ‘Sir, please give me more time, I will repay it little by little.’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“Then that debtor fell at the king’s feet and begged, ‘Sir, please give me more time, I will repay it little by little.’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 26,
+        "BBBCCCVVV": 40018026,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_027": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "27",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "27",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 27,
+        "BBBCCCVVV": 40018027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "That king had so much compassion on him that he forgave his entire debt and said, ‘Now you may go.’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "That king had so much compassion on him that he forgave his entire debt and said, ‘Now you may go.’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 27,
+        "BBBCCCVVV": 40018027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 27,
+        "BBBCCCVVV": 40018027,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 106,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_028": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "28",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "28",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 28,
+        "BBBCCCVVV": 40018028,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“When he went out, he met another servant of the king, to whom the forgiven servant had given a loan of a some rupees. But he grabbed him by the throat and said, ‘You pay back my loan right now!’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“When he went out, he met another servant of the king, to whom the forgiven servant had given a loan of a some rupees. But he grabbed him by the throat and said, ‘You pay back my loan right now!’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 28,
+        "BBBCCCVVV": 40018028,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 28,
+        "BBBCCCVVV": 40018028,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 202,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_029": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "29",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "29",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 29,
+        "BBBCCCVVV": 40018029,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“He fell down at his feet and begged, ‘Sir, please give me some time, I will pay it back little by little.’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“He fell down at his feet and begged, ‘Sir, please give me some time, I will pay it back little by little.’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 29,
+        "BBBCCCVVV": 40018029,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_030": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "30",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "30",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 30,
+        "BBBCCCVVV": 40018030,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "But his fellow servant didn’t accept his proposal. And he had him thrown into jail, and said, ‘You will rot here until fully repaying the loan.’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "But his fellow servant didn’t accept his proposal. And he had him thrown into jail, and said, ‘You will rot here until fully repaying the loan.’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 30,
+        "BBBCCCVVV": 40018030,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 30,
+        "BBBCCCVVV": 40018030,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 151,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_031": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "31",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "31",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 31,
+        "BBBCCCVVV": 40018031,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“But there were other servants of the king who saw this and became very distressed. And they went and told the king what had happened. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“But there were other servants of the king who saw this and became very distressed. And they went and told the king what had happened. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 31,
+        "BBBCCCVVV": 40018031,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_032": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "32",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "32",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 32,
+        "BBBCCCVVV": 40018032,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "So the king called that unmerciful servant and said, ‘O evil fool, you requested of me, and I forgave your entire debt. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "So the king called that unmerciful servant and said, ‘O evil fool, you requested of me, and I forgave your entire debt. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 32,
+        "BBBCCCVVV": 40018032,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_033": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "33",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "33",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 33,
+        "BBBCCCVVV": 40018033,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "So, if I could have so much mercy on you, shouldn’t you have had mercy on your debtor also?’ ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "So, if I could have so much mercy on you, shouldn’t you have had mercy on your debtor also?’ ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 33,
+        "BBBCCCVVV": 40018033,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Type": 3,
+      "Marker": "p",
+      "Attributes": [],
+      "Data": null,
+      "EndMarker": null,
+      "Token": {
+        "Type": 4,
+        "Marker": "p",
+        "Text": null,
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": "p*",
+        "NestlessMarker": "p",
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 33,
+        "BBBCCCVVV": 40018033,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 99,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_034": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "34",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "34",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 34,
+        "BBBCCCVVV": 40018034,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "“The king was so angry with him that he gave him this punishment, ‘He is to rot in jail, until he has repaid the whole debt. ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "“The king was so angry with him that he gave him this punishment, ‘He is to rot in jail, until he has repaid the whole debt. ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 34,
+        "BBBCCCVVV": 40018034,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ],
+  "40_018_035": [
+    {
+      "Type": 2,
+      "Marker": "v",
+      "Attributes": [],
+      "Data": "35",
+      "EndMarker": null,
+      "Token": {
+        "Type": 2,
+        "Marker": "v",
+        "Text": null,
+        "Attributes": null,
+        "Data": "35",
+        "EndMarker": null,
+        "NestlessMarker": "v",
+        "HasData": true,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 35,
+        "BBBCCCVVV": 40018035,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 0,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    },
+    {
+      "Text": "Like this, if someone asks forgiveness from you, but you don’t forgive them with a full heart, then your Father God in heaven will also do to you.” ",
+      "Token": {
+        "Type": 3,
+        "Marker": null,
+        "Text": "Like this, if someone asks forgiveness from you, but you don’t forgive them with a full heart, then your Father God in heaven will also do to you.” ",
+        "Attributes": null,
+        "Data": null,
+        "EndMarker": null,
+        "NestlessMarker": null,
+        "HasData": false,
+        "HasAttributes": false,
+        "HasNonDefaultAttribute": false
+      },
+      "VerseRef": {
+        "BookCode": "MAT",
+        "BookNum": 40,
+        "ChapterNum": 18,
+        "VerseNum": 35,
+        "BBBCCCVVV": 40018035,
+        "Versification": {
+          "Type": 4,
+          "IsCustomized": false
+        },
+        "RepresentsMultipleVerses": false,
+        "AllVerses": []
+      },
+      "VerseOffset": 6,
+      "IsSpecial": false,
+      "IsFigure": false,
+      "IsFootnoteOrCrossReference": false,
+      "IsScripture": true,
+      "IsMetadata": false,
+      "IsPublishableVernacular": true
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TranslatedText.txt b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TranslatedText.txt
new file mode 100644
index 00000000..b1649211
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_TranslatedText.txt
@@ -0,0 +1,7 @@
+3a
+ Then He said, 
+4
+ “I tell you the truth, whoever humbles himself and has a pure heart like this child will be the greatest in God’s kingdom. 
+3b
+ And unless you do this, you cannot enter the kingdom of heaven.” 
+Teaching About Temptation 
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VerseReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VerseReference.json
new file mode 100644
index 00000000..3c579a3c
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VerseReference.json
@@ -0,0 +1,13 @@
+{
+  "BookCode": "MAT",
+  "BookNum": 40,
+  "ChapterNum": 18,
+  "VerseNum": 3,
+  "BBBCCCVVV": 40018003,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": false,
+  "AllVerses": []
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VersesReference.json b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VersesReference.json
new file mode 100644
index 00000000..66291308
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/PtxBackTrHelper/CombinedInSourceAndTargetWithVaOverride/CombinedInSourceAndTargetWithVaOverride_VersesReference.json
@@ -0,0 +1,40 @@
+{
+  "BookCode": "MAT",
+  "BookNum": 40,
+  "ChapterNum": 18,
+  "VerseNum": 3,
+  "BBBCCCVVV": 40018003,
+  "Versification": {
+    "Type": 4,
+    "IsCustomized": false
+  },
+  "RepresentsMultipleVerses": true,
+  "AllVerses": [
+    {
+      "BookCode": "MAT",
+      "BookNum": 40,
+      "ChapterNum": 18,
+      "VerseNum": 3,
+      "BBBCCCVVV": 40018003,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    },
+    {
+      "BookCode": "MAT",
+      "BookNum": 40,
+      "ChapterNum": 18,
+      "VerseNum": 4,
+      "BBBCCCVVV": 40018004,
+      "Versification": {
+        "Type": 4,
+        "IsCustomized": false
+      },
+      "RepresentsMultipleVerses": false,
+      "AllVerses": []
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs b/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
index 0c1b93d1..7f381dd0 100644
--- a/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
+++ b/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
@@ -23,7 +23,8 @@ public class UnitTest_PtxBackTrHelper
         [TestCase("SimpleParagraphVerse", "SimpleParagraphVerseMissingInTarget")]
         [TestCase("SingleVerse", "SingleVerseMissingInTarget")]
         /* these are all now failing and I don't think they matter anymore. We aren't now completely 
-         * overwriting the target text with the translated text.
+         * overwriting the target text with the translated text, rather than merging with what's
+         * in the target presently.
         [TestCase("SingleVerse", "SingleVerseMiTSplitIntoTwoParagraphs")]
         [TestCase("SingleVerse", "SingleVerseSplitIntoTwoParagraphs")]
         [TestCase("MultipleParagraphs", "MultipleParagraphsJoinedIntoOneParagraphs")]
@@ -56,6 +57,7 @@ public void It_Can_Determine_Correct_Update_To_Target_Project(string fileNameCom
         [TestCase("MultipleVersesWithFootnote")]
         [TestCase("SeparateInSourceCombinedButEmptyInTarget")]
         [TestCase("CombinedInSourceSeparateNoEmptyInTarget")]
+        [TestCase("CombinedInSourceAndTargetWithVaOverride")]
         public void It_Can_Determine_Correct_Update_To_Target_Project_For_Other_Cases(string fileNamePrefix)
         {
             var usfmTokensSource = TestModel.LoadKeyedListOfTokens($"{fileNamePrefix}_TokensSource.json");

From d1d1245855c0bfb3d628ebcb1afff47c844ca22d Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Tue, 14 Mar 2023 21:21:26 -0500
Subject: [PATCH 28/71] updated to 0.5.6 of the EncConverters core

---
 .../IndicConverters/IndicConverters.wixproj                 | 4 ++--
 .../Converter Packages/IndicConverters/packages.config      | 2 +-
 .../IndicConverters64bit/IndicConverters64bit.wixproj       | 4 ++--
 .../Converter Packages/IndicConverters64bit/packages.config | 2 +-
 Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj           | 4 ++--
 Installer/SEC Setup 64bit/packages.config                   | 2 +-
 Installer/SEC Setup/SEC Setup.wixproj                       | 4 ++--
 Installer/SEC Setup/packages.config                         | 2 +-
 Installer/ScHelpMM/ScHelpMM.wixproj                         | 4 ++--
 Installer/ScHelpMM/packages.config                          | 2 +-
 Installer/SetupSILConverters/SetupSILConverters.wixproj     | 6 +++---
 Installer/SetupSILConverters/packages.config                | 2 +-
 Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj | 4 ++--
 Installer/TECkitPackage64bitMM/packages.config              | 2 +-
 Installer/TECkitPackageMM/TECkitPackageMM.wixproj           | 4 ++--
 Installer/TECkitPackageMM/packages.config                   | 2 +-
 src/AdaptIt2Unicode/AdaptIt2Unicode.csproj                  | 4 ++--
 src/AdaptIt2Unicode/packages.config                         | 2 +-
 src/BulkSFMConverter/SFMConv.csproj                         | 4 ++--
 src/BulkSFMConverter/packages.config                        | 2 +-
 src/ClipboardEC/ClipboardEC.csproj                          | 4 ++--
 src/ClipboardEC/packages.config                             | 2 +-
 src/DChartHelper/DChartHelper.csproj                        | 4 ++--
 src/DChartHelper/packages.config                            | 2 +-
 .../ParatextPluginBackTranslationHelper.csproj              | 4 ++--
 src/ParatextPluginBackTranslationHelper/packages.config     | 2 +-
 src/SILConvertersInstaller/SILConvertersInstaller.vbproj    | 4 ++--
 src/SILConvertersInstaller/packages.config                  | 2 +-
 src/SILConvertersOffice/SILConvertersOffice.csproj          | 4 ++--
 src/SILConvertersOffice/packages.config                     | 2 +-
 src/SILConvertersOffice07/SILConvertersOffice07.csproj      | 4 ++--
 src/SILConvertersOffice07/packages.config                   | 2 +-
 src/SILConvertersOffice10/SILConvertersOffice10.csproj      | 4 ++--
 src/SILConvertersOffice10/packages.config                   | 2 +-
 src/SILConvertersOffice13/SILConvertersOffice13.csproj      | 4 ++--
 src/SILConvertersOffice13/packages.config                   | 2 +-
 src/SILConvertersWordML/SILConvertersWordML.csproj          | 4 ++--
 src/SILConvertersWordML/TestBwdc/TestBwdc.csproj            | 4 ++--
 src/SILConvertersWordML/TestBwdc/packages.config            | 2 +-
 src/SILConvertersWordML/packages.config                     | 2 +-
 src/SilConvertersXML/SilConvertersXML.csproj                | 4 ++--
 src/SilConvertersXML/packages.config                        | 2 +-
 src/SpellingFixerEC/SpellingFixerEC.csproj                  | 6 ++++--
 src/SpellingFixerEC/packages.config                         | 2 +-
 src/TECkit Mapping Editor/TECkit Mapping Editor.csproj      | 4 ++--
 src/TECkit Mapping Editor/packages.config                   | 2 +-
 46 files changed, 72 insertions(+), 70 deletions(-)

diff --git a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj
index 34089e77..8cfea677 100644
--- a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
+++ b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -82,7 +82,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters/packages.config b/Installer/Converter Packages/IndicConverters/packages.config
index d556b890..36562a63 100644
--- a/Installer/Converter Packages/IndicConverters/packages.config	
+++ b/Installer/Converter Packages/IndicConverters/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj
index 93d4b5fd..bf3ae6fb 100644
--- a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
+++ b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -40,7 +40,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters64bit/packages.config b/Installer/Converter Packages/IndicConverters64bit/packages.config
index d556b890..36562a63 100644
--- a/Installer/Converter Packages/IndicConverters64bit/packages.config	
+++ b/Installer/Converter Packages/IndicConverters64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj
index b295d21a..ef25eacb 100644
--- a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
+++ b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -59,7 +59,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup 64bit/packages.config b/Installer/SEC Setup 64bit/packages.config
index d556b890..36562a63 100644
--- a/Installer/SEC Setup 64bit/packages.config	
+++ b/Installer/SEC Setup 64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup/SEC Setup.wixproj b/Installer/SEC Setup/SEC Setup.wixproj
index 8c37b8f8..ea694e57 100644
--- a/Installer/SEC Setup/SEC Setup.wixproj	
+++ b/Installer/SEC Setup/SEC Setup.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -67,7 +67,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup/packages.config b/Installer/SEC Setup/packages.config
index d556b890..36562a63 100644
--- a/Installer/SEC Setup/packages.config	
+++ b/Installer/SEC Setup/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/ScHelpMM/ScHelpMM.wixproj b/Installer/ScHelpMM/ScHelpMM.wixproj
index 05c3d151..459cb401 100644
--- a/Installer/ScHelpMM/ScHelpMM.wixproj
+++ b/Installer/ScHelpMM/ScHelpMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -48,7 +48,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/ScHelpMM/packages.config b/Installer/ScHelpMM/packages.config
index d556b890..36562a63 100644
--- a/Installer/ScHelpMM/packages.config
+++ b/Installer/ScHelpMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SetupSILConverters/SetupSILConverters.wixproj b/Installer/SetupSILConverters/SetupSILConverters.wixproj
index fc0cf415..cd12e520 100644
--- a/Installer/SetupSILConverters/SetupSILConverters.wixproj
+++ b/Installer/SetupSILConverters/SetupSILConverters.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="$([MSBuild]::GetPathOfFileAbove(directory.build.props))" Condition="Exists('$([MSBuild]::GetPathOfFileAbove(directory.build.props))')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
@@ -20,7 +20,7 @@
     <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.1.0;UpgradeCode=8A50226C-84D0-4CAF-AF8F-B0284643C415;Year=2022;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
-    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.1.0;UpgradeCode=0F7D5D72-E9F3-40BB-9748-D388C70096CD;Year=2022;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
+    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.2.0;UpgradeCode=0F7D5D72-E9F3-40BB-9748-D388C70096CD;Year=2023;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
@@ -66,7 +66,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <Target Name="PostBuildCopy" AfterTargets="Build">
     <PropertyGroup>
diff --git a/Installer/SetupSILConverters/packages.config b/Installer/SetupSILConverters/packages.config
index d556b890..36562a63 100644
--- a/Installer/SetupSILConverters/packages.config
+++ b/Installer/SetupSILConverters/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
index 8d1c0b5f..6f4f7f40 100644
--- a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
+++ b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackage64bitMM/packages.config b/Installer/TECkitPackage64bitMM/packages.config
index d556b890..36562a63 100644
--- a/Installer/TECkitPackage64bitMM/packages.config
+++ b/Installer/TECkitPackage64bitMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
index d43e4c88..5d3915c3 100644
--- a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
+++ b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackageMM/packages.config b/Installer/TECkitPackageMM/packages.config
index d556b890..36562a63 100644
--- a/Installer/TECkitPackageMM/packages.config
+++ b/Installer/TECkitPackageMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" />
+  <package id="Encoding-Converters-Core" version="0.5.6" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
index 4a5c7491..f9ba5206 100644
--- a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
+++ b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -204,6 +204,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/packages.config b/src/AdaptIt2Unicode/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/AdaptIt2Unicode/packages.config
+++ b/src/AdaptIt2Unicode/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/SFMConv.csproj b/src/BulkSFMConverter/SFMConv.csproj
index 648d7735..cac7c60d 100644
--- a/src/BulkSFMConverter/SFMConv.csproj
+++ b/src/BulkSFMConverter/SFMConv.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -207,6 +207,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/packages.config b/src/BulkSFMConverter/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/BulkSFMConverter/packages.config
+++ b/src/BulkSFMConverter/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ClipboardEC/ClipboardEC.csproj b/src/ClipboardEC/ClipboardEC.csproj
index 1f78d241..7285686b 100644
--- a/src/ClipboardEC/ClipboardEC.csproj
+++ b/src/ClipboardEC/ClipboardEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -198,6 +198,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ClipboardEC/packages.config b/src/ClipboardEC/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/ClipboardEC/packages.config
+++ b/src/ClipboardEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/DChartHelper/DChartHelper.csproj b/src/DChartHelper/DChartHelper.csproj
index 3c6263bb..1359edd0 100644
--- a/src/DChartHelper/DChartHelper.csproj
+++ b/src/DChartHelper/DChartHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -255,6 +255,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/DChartHelper/packages.config b/src/DChartHelper/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/DChartHelper/packages.config
+++ b/src/DChartHelper/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index e8bd3bbc..55fd7ca5 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -227,6 +227,6 @@ ren "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(TargetFileName)" "$(Proje
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/packages.config b/src/ParatextPluginBackTranslationHelper/packages.config
index e89a57ae..76cac799 100644
--- a/src/ParatextPluginBackTranslationHelper/packages.config
+++ b/src/ParatextPluginBackTranslationHelper/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.23" targetFramework="net48" />
   <package id="ParatextPluginInterfaces" version="2.0.23" targetFramework="net48" />
diff --git a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
index b2b29f2b..c7572bcd 100644
--- a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
+++ b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -244,6 +244,6 @@ xcopy /s /y "$(EcDistFilesPath)\redist\*.*" "$(SolutionDir)output\$(PlatformName
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersInstaller/packages.config b/src/SILConvertersInstaller/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SILConvertersInstaller/packages.config
+++ b/src/SILConvertersInstaller/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index d0246836..e03e6c96 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -315,6 +315,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/packages.config b/src/SILConvertersOffice/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SILConvertersOffice/packages.config
+++ b/src/SILConvertersOffice/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/SILConvertersOffice07.csproj b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
index bad6f752..7e41b3c6 100644
--- a/src/SILConvertersOffice07/SILConvertersOffice07.csproj
+++ b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -348,6 +348,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/packages.config b/src/SILConvertersOffice07/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SILConvertersOffice07/packages.config
+++ b/src/SILConvertersOffice07/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index a9a994c8..2cf59bf2 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -342,6 +342,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/packages.config b/src/SILConvertersOffice10/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SILConvertersOffice10/packages.config
+++ b/src/SILConvertersOffice10/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index b706f0ad..d7fd5c23 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -356,6 +356,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/packages.config b/src/SILConvertersOffice13/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SILConvertersOffice13/packages.config
+++ b/src/SILConvertersOffice13/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/SILConvertersWordML.csproj b/src/SILConvertersWordML/SILConvertersWordML.csproj
index 73f58ea3..ecc12145 100644
--- a/src/SILConvertersWordML/SILConvertersWordML.csproj
+++ b/src/SILConvertersWordML/SILConvertersWordML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -246,6 +246,6 @@
       <ErrorTextMissingPIA>This project references a Microsoft Office PIA file, which is required to be built against or it won't work for older versions of Word. The missing file needing to be restored is {0}.</ErrorTextMissingPIA>
     </PropertyGroup>
     <Error Condition="!Exists('..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll')" Text="$([System.String]::Format('$(ErrorTextMissingPIA)', 'Microsoft.Office.Interop.Word, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c expected to be in ..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 902c7ced..01f58d56 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" />
   <Import Project="..\..\..\packages\NUnit.3.13.3\build\NUnit.props" Condition="Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" />
   <PropertyGroup>
@@ -456,7 +456,7 @@
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit.3.13.3\build\NUnit.props'))" />
     <Error Condition="!Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
   <ProjectExtensions>
     <VisualStudio>
diff --git a/src/SILConvertersWordML/TestBwdc/packages.config b/src/SILConvertersWordML/TestBwdc/packages.config
index 4115ad13..0a0e99d7 100644
--- a/src/SILConvertersWordML/TestBwdc/packages.config
+++ b/src/SILConvertersWordML/TestBwdc/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
   <package id="Microsoft.CSharp" version="4.7.0" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="NUnit" version="3.13.3" targetFramework="net48" />
diff --git a/src/SILConvertersWordML/packages.config b/src/SILConvertersWordML/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SILConvertersWordML/packages.config
+++ b/src/SILConvertersWordML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SilConvertersXML/SilConvertersXML.csproj b/src/SilConvertersXML/SilConvertersXML.csproj
index df744f05..d3c3bcae 100644
--- a/src/SilConvertersXML/SilConvertersXML.csproj
+++ b/src/SilConvertersXML/SilConvertersXML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -222,6 +222,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SilConvertersXML/packages.config b/src/SilConvertersXML/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SilConvertersXML/packages.config
+++ b/src/SilConvertersXML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index 2e639bd9..ab16178a 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -60,6 +60,7 @@
     <PlatformTarget>x86</PlatformTarget>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
@@ -74,6 +75,7 @@
     <PlatformTarget>x86</PlatformTarget>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
+    <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
@@ -247,6 +249,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/packages.config b/src/SpellingFixerEC/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/SpellingFixerEC/packages.config
+++ b/src/SpellingFixerEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj
index c013e442..abf366ad 100644
--- a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
+++ b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -239,6 +239,6 @@ xcopy /y "$(ProjectDir)UnicodeRanges.xml" "$(SolutionDir)output\$(PlatformName)\
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.5\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/packages.config b/src/TECkit Mapping Editor/packages.config
index dce80ccc..07c3c3ac 100644
--- a/src/TECkit Mapping Editor/packages.config	
+++ b/src/TECkit Mapping Editor/packages.config	
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.5" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
 </packages>
\ No newline at end of file

From f548e403abf06d69ad61ad7dad15bfb314f8afba Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Tue, 14 Mar 2023 21:22:50 -0500
Subject: [PATCH 29/71] make the status line better English when singular vs.
 plural

---
 .../BackTranslationHelperForm.cs                 | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index e1253d5b..0791a14f 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -109,10 +109,20 @@ private void TargetBackTranslationTextChanged(string value)
         {
             var translatedCount = GetTranslatedLines(value).Count;
             System.Diagnostics.Debug.WriteLine($"PtxBTH: TargetBackTranslationTextChanged: SourceDataLineCount = '{SourceDataLineCount}', translatedCount = '{translatedCount}'");
+            var statusText = String.Empty;
             if (SourceDataLineCount != translatedCount)
-                textBoxStatus.Text = $"There are currently {translatedCount} lines of text in the Target Translation box vs. {SourceDataLineCount} text lines in the source verse (one for each of these markers: {String.Join(",", TextTokenMarkersSource.Select(m => $"\\{m.Marker}"))})";
-            else
-                textBoxStatus.Text = String.Empty;
+            {
+                statusText = String.Format("There {0} currently {1} line{2} of text in the Target Translation box vs. {3} text line{4} in the source verse ({5}: {6})",
+                                           (translatedCount > 1) ? "are" : "is",
+                                           translatedCount,
+                                           (translatedCount > 1) ? "s" : string.Empty,
+                                           SourceDataLineCount,
+                                           (SourceDataLineCount > 1) ? "s" : string.Empty,
+                                           (TextTokenMarkersSource.Count > 1) ? "one for each of these markers" : "for this marker",
+                                           String.Join(",", TextTokenMarkersSource.Select(m => $"\\{m.Marker}")));
+            }
+
+            textBoxStatus.Text = statusText;
 
             Application.DoEvents(); // this says we need to do this for when it won't display the change: https://social.msdn.microsoft.com/Forums/vstudio/en-US/983d2e3b-9bcb-4c9c-9e85-59f8b2051b3e/program-updating-a-textbox-does-not-work?forum=csharpgeneral
         }

From 706e21901bac28c9ffa061996cc6c1396d20cf83 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 15 Mar 2023 06:19:58 -0500
Subject: [PATCH 30/71] updated installer version to 5.1.2

---
 Directory.Build.props                                   | 2 +-
 Installer/SetupSILConverters/SetupSILConverters.wixproj | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/Directory.Build.props b/Directory.Build.props
index 6bc626c2..2a01ff1c 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -3,7 +3,7 @@
     <ApplicationName>SILConverters</ApplicationName>
     <SafeApplicationName>SILConverters</SafeApplicationName>
     <TruncatedVersion>5.1</TruncatedVersion>
-    <VersionNumber>5.1.1.0</VersionNumber>
+    <VersionNumber>5.1.2.0</VersionNumber>
     <UpgradeCode>8A50226C-84D0-4CAF-AF8F-B0284643C415</UpgradeCode>
     <Year>2022</Year>
     <Manufacturer>SIL International</Manufacturer>
diff --git a/Installer/SetupSILConverters/SetupSILConverters.wixproj b/Installer/SetupSILConverters/SetupSILConverters.wixproj
index cd12e520..34561d22 100644
--- a/Installer/SetupSILConverters/SetupSILConverters.wixproj
+++ b/Installer/SetupSILConverters/SetupSILConverters.wixproj
@@ -17,7 +17,7 @@
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.1.0;UpgradeCode=8A50226C-84D0-4CAF-AF8F-B0284643C415;Year=2022;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
+    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.2.0;UpgradeCode=8A50226C-84D0-4CAF-AF8F-B0284643C415;Year=2022;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
     <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.2.0;UpgradeCode=0F7D5D72-E9F3-40BB-9748-D388C70096CD;Year=2023;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>

From 314491f155fc6fe16d1ee4cea8e5af45dff66809 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 15 Mar 2023 06:20:51 -0500
Subject: [PATCH 31/71] fix error: "error CS8652: The feature 'constant
 interpolated strings' is currently in Preview and *unsupported*. To use
 Preview features, use the 'preview' language version." (it never needed to be
 a 'constant interpolated string' anyway.)

---
 src/SpellingFixerEC/LoginSF.cs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/SpellingFixerEC/LoginSF.cs b/src/SpellingFixerEC/LoginSF.cs
index cf8aac12..28e63095 100644
--- a/src/SpellingFixerEC/LoginSF.cs
+++ b/src/SpellingFixerEC/LoginSF.cs
@@ -135,7 +135,7 @@ internal static string CctableLastHeaderLine
             get { return "c Last Header Line: DON'T modify the table beyond this point (or your changes may be overwritten)"; }
         }
 
-        internal const string DummyRule = $"    d31 > d31 c dummy rule so that the table isn't empty (can be removed if you have rules below the Last Header Line below)";
+        internal const string DummyRule = "    d31 > d31 c dummy rule so that the table isn't empty (can be removed if you have rules below the Last Header Line below)";
         internal const string CustomRuleEndComment = "c +----------end custom changes----------+";
 
         internal static void CreateCCTable(StreamWriter sw, string strEncConverterName, string strPunctuation, string strCustomCode = DummyRule, bool bUnicode = true)

From 57f1764a413995bc41e4f728bb3d93dbed6e2ac6 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 17 Mar 2023 07:58:09 -0500
Subject: [PATCH 32/71] update license text to the correct year

---
 Installer/SEC Setup 64bit/License.rtf | 155 ++++++++++++--------------
 Installer/SEC Setup/License.rtf       | 155 ++++++++++++--------------
 2 files changed, 146 insertions(+), 164 deletions(-)

diff --git a/Installer/SEC Setup 64bit/License.rtf b/Installer/SEC Setup 64bit/License.rtf
index bb912d2c..c9148a41 100644
--- a/Installer/SEC Setup 64bit/License.rtf	
+++ b/Installer/SEC Setup 64bit/License.rtf	
@@ -1,62 +1,63 @@
-{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff31507\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f4\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Helvetica;}
-{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;}
-{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
-{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f44\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f45\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\f47\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f48\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f49\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f50\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\f51\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f52\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f84\fbidi \fswiss\fcharset238\fprq2 Helvetica CE;}{\f85\fbidi \fswiss\fcharset204\fprq2 Helvetica Cyr;}
-{\f87\fbidi \fswiss\fcharset161\fprq2 Helvetica Greek;}{\f88\fbidi \fswiss\fcharset162\fprq2 Helvetica Tur;}{\f89\fbidi \fswiss\fcharset177\fprq2 Helvetica (Hebrew);}{\f90\fbidi \fswiss\fcharset178\fprq2 Helvetica (Arabic);}
-{\f91\fbidi \fswiss\fcharset186\fprq2 Helvetica Baltic;}{\f92\fbidi \fswiss\fcharset163\fprq2 Helvetica (Vietnamese);}{\f414\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f415\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}
-{\f417\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f418\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f419\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\f420\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}
-{\f421\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f422\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
-{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;}
-{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\fhimajor\f31533\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}{\fhimajor\f31534\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);}
-{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;}{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
-{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
-{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}
-{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
-{\fhiminor\f31573\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\fhiminor\f31574\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}
-{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}
-{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
-\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red0\green0\blue0;\red0\green0\blue0;\red51\green51\blue51;}{\*\defchp \fs22\loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap 
-\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 
-\af31507\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
+{\rtf1\adeflang1081\ansi\ansicpg1252\uc1\adeff24\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi0\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f4\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Helvetica;}
+{\f24\fbidi \froman\fcharset0\fprq2{\*\panose 00000400000000000000}Mangal{\*\falt Nirmala UI};}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
+{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;}{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f329\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
+{\f330\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f332\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f333\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f334\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\f335\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f336\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f337\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f369\fbidi \fswiss\fcharset238\fprq2 Helvetica CE;}
+{\f370\fbidi \fswiss\fcharset204\fprq2 Helvetica Cyr;}{\f372\fbidi \fswiss\fcharset161\fprq2 Helvetica Greek;}{\f373\fbidi \fswiss\fcharset162\fprq2 Helvetica Tur;}{\f374\fbidi \fswiss\fcharset177\fprq2 Helvetica (Hebrew);}
+{\f375\fbidi \fswiss\fcharset178\fprq2 Helvetica (Arabic);}{\f376\fbidi \fswiss\fcharset186\fprq2 Helvetica Baltic;}{\f377\fbidi \fswiss\fcharset163\fprq2 Helvetica (Vietnamese);}{\f669\fbidi \froman\fcharset238\fprq2 Cambria Math CE;}
+{\f670\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f672\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}{\f673\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f676\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;}
+{\f677\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f699\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f700\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\f702\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}
+{\f703\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f704\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\f705\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\f706\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}
+{\f707\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
+{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
+{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}
+{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;}{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}
+{\fhimajor\f31533\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}{\fhimajor\f31534\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);}{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;}
+{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
+{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
+{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
+{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
+{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
+{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}
+{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\fhiminor\f31573\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}
+{\fhiminor\f31574\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}
+{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;
+\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;
+\red192\green192\blue192;\red0\green0\blue0;\red0\green0\blue0;\red51\green51\blue51;}{\*\defchp \fs22\loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap \ql \li0\ri0\sa160\sl259\slmult1
+\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af24\afs22\alang1025 \ltrch\fcs0 
+\fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
 \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa160\sl259\slmult1
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused 
-Normal Table;}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid6833241\rsid9134832}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info{\operator Bob Eaton}
-{\creatim\yr2021\mo8\dy28\hr17\min5}{\revtim\yr2021\mo8\dy28\hr17\min6}{\version2}{\edmins1}{\nofpages1}{\nofwords161}{\nofchars918}{\nofcharsws1077}{\vern29}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}
-\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect 
+\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1081 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused 
+Normal Table;}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid3940604\rsid6833241\rsid9134832}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info
+{\operator Bob Eaton}{\creatim\yr2021\mo8\dy28\hr17\min5}{\revtim\yr2023\mo3\dy15\hr6\min59}{\version3}{\edmins1}{\nofpages1}{\nofwords161}{\nofchars918}{\nofcharsws1077}{\vern67}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}
+}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect 
 \widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\horzdoc\dghspace120\dgvspace120\dghorigin1701
 \dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\rsidroot9134832 \nouicompat \fet0{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\*\pnseclvl1
 \pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5
 \pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang 
-{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \cbpat8 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 
+{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \cbpat8 \rtlch\fcs1 \af24\afs22\alang1025 \ltrch\fcs0 
 \fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4 The MIT License (MIT)
 \par }\pard \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid9134832 \cbpat8 {\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4 Copyright }{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 
-\f4\fs21\cf19\insrsid9134832\charrsid9134832 \loch\af4\dbch\af31505\hich\f4 \'a9}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid9134832 \hich\af4\dbch\af31505\loch\f4  \hich\af4\dbch\af31505\loch\f4 2021}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 
-\f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4  SIL International
+\f4\fs21\cf19\insrsid9134832\charrsid9134832 \loch\af4\dbch\af31505\hich\f4 \'a9}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid9134832 \hich\af4\dbch\af31505\loch\f4  202}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid3940604 
+\hich\af4\dbch\af31505\loch\f4 3}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4  SIL International
 \par }\pard \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \cbpat8 {\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4 P\hich\af4\dbch\af31505\loch\f4 
-ermission is hereby granted, free of charge, to any person obtain\hich\af4\dbch\af31505\loch\f4 
-ing a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the S
-\hich\af4\dbch\af31505\loch\f4 o\hich\af4\dbch\af31505\loch\f4 ftware, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-\par \hich\af4\dbch\af31505\loch\f4 The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-\par \hich\af4\dbch\af31505\loch\f4 THE SOFTWARE IS PR\hich\af4\dbch\af31505\loch\f4 
-OVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CL
-\hich\af4\dbch\af31505\loch\f4 A\hich\af4\dbch\af31505\loch\f4 IM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, me
+\hich\af4\dbch\af31505\loch\f4 r\hich\af4\dbch\af31505\loch\f4 ge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+\par \hich\af4\dbch\af31505\loch\f4 The above copyright notice and this permission notice shall be included in all c\hich\af4\dbch\af31505\loch\f4 opies or substantial portions of the Software.
+\par \hich\af4\dbch\af31505\loch\f4 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO E
+\hich\af4\dbch\af31505\loch\f4 
+VENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 \par }\pard \ltrpar\ql \li0\ri0\sa160\sl252\slmult1\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af37 \ltrch\fcs0 \f37\insrsid6833241 
 \par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a
@@ -143,35 +144,25 @@ faadb081f196af190c6a98242f8467912ab0a651ad6a5a548d8cc3c1aafb6121653923699635d3ca
 \lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Top of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Bottom of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal (Web);\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Acronym;
 \lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Cite;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Code;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Definition;
 \lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Keyboard;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Preformatted;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Sample;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Typewriter;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Table;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 1;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 3;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 6;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 6;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Contemporary;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Elegant;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Professional;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Theme;\lsdsemihidden1 \lsdlocked0 Placeholder Text;
-\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2;
-\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List;
-\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdpriority61 \lsdlocked0 Light List Accent 1;
-\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdsemihidden1 \lsdlocked0 Revision;
-\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;
-\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdpriority72 \lsdlocked0 Colorful List Accent 1;
-\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
-\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;
-\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;
-\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
-\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;
-\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4;
-\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
-\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4;
-\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5;
-\lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
+\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;
+\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;
+\lsdsemihidden1 \lsdlocked0 Placeholder Text;\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;
+\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;
+\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List;\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;
+\lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;
+\lsdsemihidden1 \lsdlocked0 Revision;\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdpriority62 \lsdlocked0 Light Grid Accent 5;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;
 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdpriority62 \lsdlocked0 Light Grid Accent 6;
 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;
@@ -213,8 +204,8 @@ fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffff
 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e50000000000000000000000006096
-c7eb589cd701feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
+ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e5000000000000000000000000b04e
+bfa23557d901feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000105000000000000}}
\ No newline at end of file
diff --git a/Installer/SEC Setup/License.rtf b/Installer/SEC Setup/License.rtf
index bb912d2c..d241d751 100644
--- a/Installer/SEC Setup/License.rtf	
+++ b/Installer/SEC Setup/License.rtf	
@@ -1,62 +1,63 @@
-{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff31507\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f4\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Helvetica;}
-{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;}
-{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
-{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f44\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f45\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\f47\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f48\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f49\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f50\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\f51\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f52\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f84\fbidi \fswiss\fcharset238\fprq2 Helvetica CE;}{\f85\fbidi \fswiss\fcharset204\fprq2 Helvetica Cyr;}
-{\f87\fbidi \fswiss\fcharset161\fprq2 Helvetica Greek;}{\f88\fbidi \fswiss\fcharset162\fprq2 Helvetica Tur;}{\f89\fbidi \fswiss\fcharset177\fprq2 Helvetica (Hebrew);}{\f90\fbidi \fswiss\fcharset178\fprq2 Helvetica (Arabic);}
-{\f91\fbidi \fswiss\fcharset186\fprq2 Helvetica Baltic;}{\f92\fbidi \fswiss\fcharset163\fprq2 Helvetica (Vietnamese);}{\f414\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f415\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}
-{\f417\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f418\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f419\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\f420\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}
-{\f421\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f422\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
-{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;}
-{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\fhimajor\f31533\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}{\fhimajor\f31534\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);}
-{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;}{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
-{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
-{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}
-{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
-{\fhiminor\f31573\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\fhiminor\f31574\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}
-{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}
-{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
-\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red0\green0\blue0;\red0\green0\blue0;\red51\green51\blue51;}{\*\defchp \fs22\loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap 
-\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 
-\af31507\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
+{\rtf1\adeflang1081\ansi\ansicpg1252\uc1\adeff24\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi0\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f4\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Helvetica;}
+{\f24\fbidi \froman\fcharset0\fprq2{\*\panose 00000400000000000000}Mangal{\*\falt Nirmala UI};}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
+{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;}{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f329\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
+{\f330\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f332\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f333\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f334\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\f335\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f336\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f337\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f369\fbidi \fswiss\fcharset238\fprq2 Helvetica CE;}
+{\f370\fbidi \fswiss\fcharset204\fprq2 Helvetica Cyr;}{\f372\fbidi \fswiss\fcharset161\fprq2 Helvetica Greek;}{\f373\fbidi \fswiss\fcharset162\fprq2 Helvetica Tur;}{\f374\fbidi \fswiss\fcharset177\fprq2 Helvetica (Hebrew);}
+{\f375\fbidi \fswiss\fcharset178\fprq2 Helvetica (Arabic);}{\f376\fbidi \fswiss\fcharset186\fprq2 Helvetica Baltic;}{\f377\fbidi \fswiss\fcharset163\fprq2 Helvetica (Vietnamese);}{\f669\fbidi \froman\fcharset238\fprq2 Cambria Math CE;}
+{\f670\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f672\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}{\f673\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f676\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;}
+{\f677\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f699\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f700\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\f702\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}
+{\f703\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f704\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}{\f705\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\f706\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}
+{\f707\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
+{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
+{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}
+{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;}{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}
+{\fhimajor\f31533\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}{\fhimajor\f31534\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);}{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;}
+{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
+{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
+{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
+{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
+{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
+{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}
+{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\fhiminor\f31573\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);}
+{\fhiminor\f31574\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}
+{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;
+\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;
+\red192\green192\blue192;\red0\green0\blue0;\red0\green0\blue0;\red51\green51\blue51;}{\*\defchp \fs22\loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap \ql \li0\ri0\sa160\sl259\slmult1
+\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af24\afs22\alang1025 \ltrch\fcs0 
+\fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
 \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa160\sl259\slmult1
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused 
-Normal Table;}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid6833241\rsid9134832}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info{\operator Bob Eaton}
-{\creatim\yr2021\mo8\dy28\hr17\min5}{\revtim\yr2021\mo8\dy28\hr17\min6}{\version2}{\edmins1}{\nofpages1}{\nofwords161}{\nofchars918}{\nofcharsws1077}{\vern29}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}
-\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect 
+\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1081 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused 
+Normal Table;}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid3604928\rsid6833241\rsid9134832}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info
+{\operator Bob Eaton}{\creatim\yr2021\mo8\dy28\hr17\min5}{\revtim\yr2023\mo3\dy15\hr6\min59}{\version3}{\edmins1}{\nofpages1}{\nofwords161}{\nofchars918}{\nofcharsws1077}{\vern67}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}
+}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect 
 \widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\horzdoc\dghspace120\dgvspace120\dghorigin1701
 \dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\rsidroot9134832 \nouicompat \fet0{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\*\pnseclvl1
 \pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5
 \pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang 
-{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \cbpat8 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 
+{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \cbpat8 \rtlch\fcs1 \af24\afs22\alang1025 \ltrch\fcs0 
 \fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4 The MIT License (MIT)
 \par }\pard \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid9134832 \cbpat8 {\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4 Copyright }{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 
-\f4\fs21\cf19\insrsid9134832\charrsid9134832 \loch\af4\dbch\af31505\hich\f4 \'a9}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid9134832 \hich\af4\dbch\af31505\loch\f4  \hich\af4\dbch\af31505\loch\f4 2021}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 
-\f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4  SIL International
+\f4\fs21\cf19\insrsid9134832\charrsid9134832 \loch\af4\dbch\af31505\hich\f4 \'a9}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid9134832 \hich\af4\dbch\af31505\loch\f4  202}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid3604928 
+\hich\af4\dbch\af31505\loch\f4 3}{\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4  SIL International
 \par }\pard \ltrpar\ql \li0\ri0\sa150\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \cbpat8 {\rtlch\fcs1 \af4\afs21 \ltrch\fcs0 \f4\fs21\cf19\insrsid6833241 \hich\af4\dbch\af31505\loch\f4 P\hich\af4\dbch\af31505\loch\f4 
-ermission is hereby granted, free of charge, to any person obtain\hich\af4\dbch\af31505\loch\f4 
-ing a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the S
-\hich\af4\dbch\af31505\loch\f4 o\hich\af4\dbch\af31505\loch\f4 ftware, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-\par \hich\af4\dbch\af31505\loch\f4 The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-\par \hich\af4\dbch\af31505\loch\f4 THE SOFTWARE IS PR\hich\af4\dbch\af31505\loch\f4 
-OVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CL
-\hich\af4\dbch\af31505\loch\f4 A\hich\af4\dbch\af31505\loch\f4 IM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, me
+\hich\af4\dbch\af31505\loch\f4 r\hich\af4\dbch\af31505\loch\f4 ge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+\par \hich\af4\dbch\af31505\loch\f4 The above copyright notice and this permission notice shall be included in all c\hich\af4\dbch\af31505\loch\f4 opies or substantial portions of the Software.
+\par \hich\af4\dbch\af31505\loch\f4 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO E
+\hich\af4\dbch\af31505\loch\f4 
+VENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 \par }\pard \ltrpar\ql \li0\ri0\sa160\sl252\slmult1\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af37 \ltrch\fcs0 \f37\insrsid6833241 
 \par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a
@@ -143,35 +144,25 @@ faadb081f196af190c6a98242f8467912ab0a651ad6a5a548d8cc3c1aafb6121653923699635d3ca
 \lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Top of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Bottom of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal (Web);\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Acronym;
 \lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Cite;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Code;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Definition;
 \lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Keyboard;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Preformatted;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Sample;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Typewriter;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Table;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 1;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 3;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 6;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 6;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Contemporary;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Elegant;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Professional;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 2;
-\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Theme;\lsdsemihidden1 \lsdlocked0 Placeholder Text;
-\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2;
-\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List;
-\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdpriority61 \lsdlocked0 Light List Accent 1;
-\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdsemihidden1 \lsdlocked0 Revision;
-\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;
-\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdpriority72 \lsdlocked0 Colorful List Accent 1;
-\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
-\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;
-\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;
-\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
-\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;
-\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4;
-\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
-\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4;
-\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5;
-\lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
+\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;
+\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;
+\lsdsemihidden1 \lsdlocked0 Placeholder Text;\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;
+\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;
+\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List;\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;
+\lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;
+\lsdsemihidden1 \lsdlocked0 Revision;\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;
+\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
+\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdpriority62 \lsdlocked0 Light Grid Accent 5;
+\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;
 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdpriority62 \lsdlocked0 Light Grid Accent 6;
 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;
@@ -213,8 +204,8 @@ fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffff
 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e50000000000000000000000006096
-c7eb589cd701feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
+ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e5000000000000000000000000b072
+0d953557d901feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000105000000000000}}
\ No newline at end of file

From 43a308f3f9edba9f28de974d66a4d260d3180a8b Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 06:15:57 -0500
Subject: [PATCH 33/71] add a new intermediate class that can create different
 TranslationHelperForm instances based on the font + converter, so that we can
 support multiple different ones at the same time

---
 .../TranslationHelperForm.cs                  | 49 ++++++++++++++++---
 1 file changed, 43 insertions(+), 6 deletions(-)

diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index 6a97b80b..e108f238 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -9,7 +9,46 @@
 
 namespace SILConvertersOffice
 {
-    internal partial class TranslationHelperForm : Form, IBaseConverterForm, IBackTranslationHelperDataSource
+    /// <summary>
+    /// each project (read: font and converter combination) needs its own TranslationHelperForm
+    /// so it can manage things like its own SpellFixer and set of EncConverters to use. So use 
+    /// this class (w/ an 's') to triangulate between the different instances of it based on the 
+    /// requested FontConverter
+    /// </summary>
+    internal class TranslationHelperForms : IBaseConverterForm
+    {
+        private static TranslationHelperForm _current;
+        private Dictionary<FontConverter, TranslationHelperForm> Forms = new Dictionary<FontConverter, TranslationHelperForm>();
+
+        bool IBaseConverterForm.SkipIdenticalValues => false;   // this was a feature for checking round-tripping, which doesn't apply here
+
+        string IBaseConverterForm.ForwardString
+        {
+            get
+            {
+                return _current?.ForwardString;
+            }
+
+            set
+            {
+                _current.ForwardString = value;
+            }
+        }
+
+        FormButtons IBaseConverterForm.Show(FontConverter aThisFC, string strInput, string strOutput)
+        {
+            if (!Forms.TryGetValue(aThisFC, out var form))
+    {
+                form = new TranslationHelperForm();
+            }
+
+            _current = form;
+
+            return _current.Show(aThisFC, strInput, strOutput);
+        }
+    }
+
+    internal partial class TranslationHelperForm : Form, IBackTranslationHelperDataSource
     {
         protected FontConverter _theFontsAndEncConverter;
         protected BackTranslationHelperModel _model;
@@ -21,9 +60,7 @@ public TranslationHelperForm()
             InitializeComponent();
         }
 
-        bool IBaseConverterForm.SkipIdenticalValues => false;   // this was a feature for checking round-tripping, which doesn't apply here
-
-        string IBaseConverterForm.ForwardString
+        public string ForwardString
         { 
             get
             {
@@ -42,7 +79,7 @@ string IBaseConverterForm.ForwardString
             }
         }
 
-        FormButtons IBaseConverterForm.Show(FontConverter fontConverter, string sourceText, string targetText)
+        public FormButtons Show(FontConverter fontConverter, string sourceText, string targetText)
         {
             WordApp.SetCursorToWaiting();
             ButtonPressed = FormButtons.Cancel; // reset and be pessimistic
@@ -64,7 +101,7 @@ FormButtons IBaseConverterForm.Show(FontConverter fontConverter, string sourceTe
                 },
             };
 
-            // this form is the implementation of the way to get get data
+            // this form is the implementation of the way to get data
             backTranslationHelperCtrl.BackTranslationHelperDataSource = this;
             if (!backTranslationHelperCtrl.TheTranslators.Any(t => t.Name == _theFontsAndEncConverter.DirectableEncConverter.GetEncConverter.Name))
                 backTranslationHelperCtrl.TheTranslators.Add(_theFontsAndEncConverter.DirectableEncConverter.GetEncConverter);

From d4ab0590e6ecb163e54c2f15a80212b29f4a688f Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 06:28:33 -0500
Subject: [PATCH 34/71] keep track of location so it doesn't shift positions
 for each translation

---
 src/SILConvertersOffice/FindReplaceForm.cs    | 23 +++++++----
 .../FontConvertersPicker.cs                   | 33 ++++++++++------
 .../Properties/Settings.Designer.cs           | 38 ++++++++++++++++++-
 .../Properties/Settings.settings              |  9 +++++
 .../SILConvertersOffice.csproj                | 12 +++---
 .../TranslationHelperForm.Designer.cs         |  8 ++++
 .../TranslationHelperForm.cs                  | 20 ++++++++++
 .../TranslationHelperForm.resx                | 16 --------
 src/SILConvertersOffice/app.config            | 20 +++++++++-
 .../Properties/Settings.Designer.cs           | 38 ++++++++++++++++++-
 .../Properties/Settings.settings              | 11 +++++-
 .../SILConvertersOffice07.csproj              |  1 -
 src/SILConvertersOffice07/app.config          | 20 +++++++++-
 .../Properties/Settings.Designer.cs           | 38 ++++++++++++++++++-
 .../Properties/Settings.settings              | 11 +++++-
 .../SILConvertersOffice10.csproj              | 12 +++++-
 src/SILConvertersOffice10/app.config          | 20 +++++++++-
 .../Properties/Settings.Designer.cs           | 38 ++++++++++++++++++-
 .../Properties/Settings.settings              | 11 +++++-
 .../SILConvertersOffice13.csproj              |  1 -
 src/SILConvertersOffice13/app.config          | 20 +++++++++-
 21 files changed, 343 insertions(+), 57 deletions(-)

diff --git a/src/SILConvertersOffice/FindReplaceForm.cs b/src/SILConvertersOffice/FindReplaceForm.cs
index 4fdba5ba..90a37f83 100644
--- a/src/SILConvertersOffice/FindReplaceForm.cs
+++ b/src/SILConvertersOffice/FindReplaceForm.cs
@@ -7,6 +7,15 @@
 using ECInterfaces;
 using SilEncConverters40;
 using Word = Microsoft.Office.Interop.Word;
+#if BUILD_FOR_OFF11
+using SILConvertersOffice.Properties;
+#elif BUILD_FOR_OFF12
+using SILConvertersOffice07.Properties;
+#elif BUILD_FOR_OFF14
+using SILConvertersOffice10.Properties;
+#elif BUILD_FOR_OFF15
+using SILConvertersOffice13.Properties;
+#endif
 
 namespace SILConvertersOffice
 {
@@ -37,16 +46,16 @@ public FindReplaceForm(WordFindReplaceDocument doc)
             m_doc = doc;
 
             // make sure these exist so don't throw an error later when we try to add to them
-            if (Properties.Settings.Default.RecentFindWhat == null)
-                Properties.Settings.Default.RecentFindWhat = new System.Collections.Specialized.StringCollection();
+            if (Settings.Default.RecentFindWhat == null)
+                Settings.Default.RecentFindWhat = new System.Collections.Specialized.StringCollection();
             else
-                foreach (string str in Properties.Settings.Default.RecentFindWhat)
+                foreach (string str in Settings.Default.RecentFindWhat)
                     comboBoxFindWhat.Items.Add(str);
 
-            if (Properties.Settings.Default.RecentReplaceWith == null)
-                Properties.Settings.Default.RecentReplaceWith = new System.Collections.Specialized.StringCollection();
+            if (Settings.Default.RecentReplaceWith == null)
+                Settings.Default.RecentReplaceWith = new System.Collections.Specialized.StringCollection();
             else
-                foreach (string str in Properties.Settings.Default.RecentReplaceWith)
+                foreach (string str in Settings.Default.RecentReplaceWith)
                     comboBoxReplaceWith.Items.Add(str);
 
 #if BUILD_FOR_OFF15
@@ -61,7 +70,7 @@ public FindReplaceForm(WordFindReplaceDocument doc)
             helpProvider.SetHelpString(this, SILConvertersOffice07.Properties.Resources.FindReplaceFormHelpString);
             helpProvider.SetHelpString(ecTextBoxFindWhat, SILConvertersOffice07.Properties.Resources.ecTextBoxFindWhatHelpString);
             helpProvider.SetHelpString(ecTextBoxReplaceWith, SILConvertersOffice07.Properties.Resources.ecTextBoxReplaceWithHelpString);
-#else
+#elif BUILD_FOR_OFF11
             helpProvider.SetHelpString(this, Properties.Resources.FindReplaceFormHelpString);
             helpProvider.SetHelpString(ecTextBoxFindWhat, Properties.Resources.ecTextBoxFindWhatHelpString);
             helpProvider.SetHelpString(ecTextBoxReplaceWith, Properties.Resources.ecTextBoxReplaceWithHelpString);
diff --git a/src/SILConvertersOffice/FontConvertersPicker.cs b/src/SILConvertersOffice/FontConvertersPicker.cs
index 4176deeb..b4d16bdb 100644
--- a/src/SILConvertersOffice/FontConvertersPicker.cs
+++ b/src/SILConvertersOffice/FontConvertersPicker.cs
@@ -14,6 +14,15 @@
 using System.Collections;
 using System.IO;                                    // FileStream
 using System.Runtime.Serialization;                 // for SerializationException
+#if BUILD_FOR_OFF11
+using SILConvertersOffice.Properties;
+#elif BUILD_FOR_OFF12
+using SILConvertersOffice07.Properties;
+#elif BUILD_FOR_OFF14
+using SILConvertersOffice10.Properties;
+#elif BUILD_FOR_OFF15
+using SILConvertersOffice13.Properties;
+#endif
 
 namespace SILConvertersOffice
 {
@@ -50,10 +59,10 @@ public FontConvertersPicker(OfficeDocument doc)
         protected void InsureSettings()
         {
             // make sure we have the collection around so we don't have to check it later
-            if (Properties.Settings.Default.ConverterMappingRecentFiles == null)
+            if (Settings.Default.ConverterMappingRecentFiles == null)
             {
-                Properties.Settings.Default.ConverterMappingRecentFiles = new System.Collections.Specialized.StringCollection();
-                Properties.Settings.Default.Save();
+                Settings.Default.ConverterMappingRecentFiles = new System.Collections.Specialized.StringCollection();
+                Settings.Default.Save();
             }
         }
 
@@ -515,13 +524,13 @@ public void AddToConverterMappingRecentlyUsed(string strFilename)
             System.Diagnostics.Debug.Assert(!String.IsNullOrEmpty(strFilename));
 
             // add this filename to the list of recently used files
-            if (Properties.Settings.Default.ConverterMappingRecentFiles.Contains(strFilename))
-                Properties.Settings.Default.ConverterMappingRecentFiles.Remove(strFilename);
-            else if (Properties.Settings.Default.ConverterMappingRecentFiles.Count > nMaxRecentFiles)
-                Properties.Settings.Default.ConverterMappingRecentFiles.RemoveAt(nMaxRecentFiles);
+            if (Settings.Default.ConverterMappingRecentFiles.Contains(strFilename))
+                Settings.Default.ConverterMappingRecentFiles.Remove(strFilename);
+            else if (Settings.Default.ConverterMappingRecentFiles.Count > nMaxRecentFiles)
+                Settings.Default.ConverterMappingRecentFiles.RemoveAt(nMaxRecentFiles);
 
-            Properties.Settings.Default.ConverterMappingRecentFiles.Insert(0, strFilename);
-            Properties.Settings.Default.Save();
+            Settings.Default.ConverterMappingRecentFiles.Insert(0, strFilename);
+            Settings.Default.Save();
         }
 
         private void recentFilesToolStripMenuItem_Click(object sender, EventArgs e)
@@ -536,7 +545,7 @@ private void recentFilesToolStripMenuItem_Click(object sender, EventArgs e)
             catch (Exception ex)
             {
                 // probably means the file doesn't exist anymore, so remove it from the recent used list
-                Properties.Settings.Default.ConverterMappingRecentFiles.Remove(aRecentFile.Text);
+                Settings.Default.ConverterMappingRecentFiles.Remove(aRecentFile.Text);
                 MessageBox.Show(ex.Message, OfficeApp.cstrCaption);
             }
         }
@@ -550,8 +559,8 @@ private void converterMappingToolStripMenuItem_DropDownOpening(object sender, Ev
             this.setDefaultConverterToolStripMenuItem.Enabled = bRowsExist;
 
             recentToolStripMenuItem.DropDownItems.Clear();
-            foreach (string strRecentFile in Properties.Settings.Default.ConverterMappingRecentFiles)
-                recentToolStripMenuItem.DropDownItems.Add(strRecentFile, null, recentFilesToolStripMenuItem_Click);
+            foreach (string strRecentFile in Settings.Default.ConverterMappingRecentFiles)
+                recentToolStripMenuItem.DropDownItems.Add(strRecentFile, null, RecentFilesToolStripMenuItem_Click);
             recentToolStripMenuItem.Enabled = (recentToolStripMenuItem.DropDownItems.Count > 0);
         }
     }
diff --git a/src/SILConvertersOffice/Properties/Settings.Designer.cs b/src/SILConvertersOffice/Properties/Settings.Designer.cs
index c5906302..8bbc3893 100644
--- a/src/SILConvertersOffice/Properties/Settings.Designer.cs
+++ b/src/SILConvertersOffice/Properties/Settings.Designer.cs
@@ -12,7 +12,7 @@ namespace SILConvertersOffice.Properties {
     
     
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.8.1.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")]
     internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
         
         private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -55,5 +55,41 @@ public static Settings Default {
                 this["ConverterMappingRecentFiles"] = value;
             }
         }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("Normal")]
+        public global::System.Windows.Forms.FormWindowState DefaultWindowState {
+            get {
+                return ((global::System.Windows.Forms.FormWindowState)(this["DefaultWindowState"]));
+            }
+            set {
+                this["DefaultWindowState"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
+        public global::System.Drawing.Point WindowLocation {
+            get {
+                return ((global::System.Drawing.Point)(this["WindowLocation"]));
+            }
+            set {
+                this["WindowLocation"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("800, 450")]
+        public global::System.Drawing.Size WindowSize {
+            get {
+                return ((global::System.Drawing.Size)(this["WindowSize"]));
+            }
+            set {
+                this["WindowSize"] = value;
+            }
+        }
     }
 }
diff --git a/src/SILConvertersOffice/Properties/Settings.settings b/src/SILConvertersOffice/Properties/Settings.settings
index 850ac784..8c9100ea 100644
--- a/src/SILConvertersOffice/Properties/Settings.settings
+++ b/src/SILConvertersOffice/Properties/Settings.settings
@@ -11,5 +11,14 @@
     <Setting Name="ConverterMappingRecentFiles" Type="System.Collections.Specialized.StringCollection" Scope="User">
       <Value Profile="(Default)" />
     </Setting>
+    <Setting Name="DefaultWindowState" Type="System.Windows.Forms.FormWindowState" Scope="User">
+      <Value Profile="(Default)">Normal</Value>
+    </Setting>
+    <Setting Name="WindowLocation" Type="System.Drawing.Point" Scope="User">
+      <Value Profile="(Default)">0, 0</Value>
+    </Setting>
+    <Setting Name="WindowSize" Type="System.Drawing.Size" Scope="User">
+      <Value Profile="(Default)">800, 450</Value>
+    </Setting>
   </Settings>
 </SettingsFile>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index e03e6c96..9ad61fb7 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -44,7 +44,7 @@
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
     <OutputPath>..\..\output\x86\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
+    <DefineConstants>TRACE;BUILD_FOR_OFF11</DefineConstants>
     <Optimize>true</Optimize>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
@@ -56,7 +56,7 @@
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
     <DebugSymbols>true</DebugSymbols>
     <OutputPath>..\..\output\x86\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF11</DefineConstants>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
@@ -66,7 +66,7 @@
   </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
     <OutputPath>..\..\output\x64\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
+    <DefineConstants>TRACE;BUILD_FOR_OFF11</DefineConstants>
     <Optimize>true</Optimize>
     <PlatformTarget>x64</PlatformTarget>
     <LangVersion>latest</LangVersion>
@@ -75,7 +75,7 @@
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
     <DebugSymbols>true</DebugSymbols>
     <OutputPath>..\..\output\x64\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF11</DefineConstants>
     <PlatformTarget>x64</PlatformTarget>
     <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
@@ -188,9 +188,7 @@
     </Compile>
     <Compile Include="PubDocumentProcessor.cs" />
     <Compile Include="PubRange.cs" />
-    <Compile Include="TranslationHelperForm.cs">
-      <SubType>Form</SubType>
-    </Compile>
+    <Compile Include="TranslationHelperForm.cs" />
     <Compile Include="TranslationHelperForm.Designer.cs">
       <DependentUpon>TranslationHelperForm.cs</DependentUpon>
     </Compile>
diff --git a/src/SILConvertersOffice/TranslationHelperForm.Designer.cs b/src/SILConvertersOffice/TranslationHelperForm.Designer.cs
index 92e1f6eb..2df444ef 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.Designer.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.Designer.cs
@@ -1,4 +1,6 @@
 
+using System;
+
 namespace SILConvertersOffice
 {
     partial class TranslationHelperForm
@@ -38,6 +40,11 @@ private void InitializeComponent()
             this.backTranslationHelperCtrl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
+            // if you edit the form (e.g. to add a control), then the designer auto coding will change this "AutoSize = false"
+            //  to (possibly true) and add an 'AutoSizeMode = GrowAndShrink'... but this will cause the embedded control to
+            //  stop showing properly. It *must* be AutoSize = false. (keep this comment here too, so the next person sees it too)
+            // (I'm not sure if it's specifically necessary, but you might need to restore the PerformLayout at the bottom,
+            //  which the editing of the form will remove too)
             this.backTranslationHelperCtrl.AutoSize = false;
             this.backTranslationHelperCtrl.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
             this.backTranslationHelperCtrl.Dock = System.Windows.Forms.DockStyle.Fill;
@@ -55,6 +62,7 @@ private void InitializeComponent()
             this.Controls.Add(this.backTranslationHelperCtrl);
             this.Name = "TranslationHelperForm";
             this.Text = "Back Translating from {0} - {1}";
+            this.Load += new System.EventHandler(this.TranslationHelperForm_Load);
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.TranslationHelperForm_FormClosing);
             this.ResumeLayout(false);
             this.PerformLayout();
diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index e108f238..ff25b172 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -6,6 +6,15 @@
 using System.Drawing;
 using System.Linq;
 using System.Windows.Forms;
+#if BUILD_FOR_OFF11
+using SILConvertersOffice.Properties;
+#elif BUILD_FOR_OFF12
+using SILConvertersOffice07.Properties;
+#elif BUILD_FOR_OFF14
+using SILConvertersOffice10.Properties;
+#elif BUILD_FOR_OFF15
+using SILConvertersOffice13.Properties;
+#endif
 
 namespace SILConvertersOffice
 {
@@ -207,6 +216,17 @@ void IBackTranslationHelperDataSource.Cancel()
             Close();
         }
 
+        private void TranslationHelperForm_Load(object sender, EventArgs e)
+        {
+            Location = Settings.Default.WindowLocation;
+            WindowState = Settings.Default.DefaultWindowState;
+            if (MinimumSize.Height <= Settings.Default.WindowSize.Height &&
+                MinimumSize.Width <= Settings.Default.WindowSize.Width)
+            {
+                Size = Settings.Default.WindowSize;
+            }
+        }
+
         private void TranslationHelperForm_FormClosing(object sender, FormClosingEventArgs e)
         {
             // only allow Cancel or ReplaceEvery
diff --git a/src/SILConvertersOffice/TranslationHelperForm.resx b/src/SILConvertersOffice/TranslationHelperForm.resx
index de129925..1af7de15 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.resx
+++ b/src/SILConvertersOffice/TranslationHelperForm.resx
@@ -117,20 +117,4 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
-  <data name="backTranslationHelperCtrl.NewTargetTexts" mimetype="application/x-microsoft.net.object.binary.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAKcBQmFja1RyYW5zbGF0aW9uSGVscGVyLCBWZXJzaW9uPTEuMC4w
-        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49ZjE0NDdiYWUxZTYzZjQ4NV1dLCBtc2Nv
-        cmxpYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1
-        YzU2MTkzNGUwODkMAwAAAFhCYWNrVHJhbnNsYXRpb25IZWxwZXIsIFZlcnNpb249MS4wLjAuMCwgQ3Vs
-        dHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1mMTQ0N2JhZTFlNjNmNDg1BQEAAABHU3lzdGVtLkNv
-        bGxlY3Rpb25zLkdlbmVyaWMuTGlzdGAxW1tCYWNrVHJhbnNsYXRpb25IZWxwZXIuVGFyZ2V0UG9zc2li
-        bGUDAAAABl9pdGVtcwVfc2l6ZQhfdmVyc2lvbgQAACZCYWNrVHJhbnNsYXRpb25IZWxwZXIuVGFyZ2V0
-        UG9zc2libGVbXQMAAAAICAIAAAAJBAAAAAEAAAABAAAABwQAAAAAAQAAAAQAAAAEJEJhY2tUcmFuc2xh
-        dGlvbkhlbHBlci5UYXJnZXRQb3NzaWJsZQMAAAAJBQAAAA0DBQUAAAAkQmFja1RyYW5zbGF0aW9uSGVs
-        cGVyLlRhcmdldFBvc3NpYmxlAwAAAB48UG9zc2libGVJbmRleD5rX19CYWNraW5nRmllbGQfPFRyYW5z
-        bGF0b3JOYW1lPmtfX0JhY2tpbmdGaWVsZBs8VGFyZ2V0RGF0YT5rX19CYWNraW5nRmllbGQAAQEIAwAA
-        AAAAAAAKBgYAAAAACw==
-</value>
-  </data>
 </root>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/app.config b/src/SILConvertersOffice/app.config
index cc4c784e..9a8f0d4d 100644
--- a/src/SILConvertersOffice/app.config
+++ b/src/SILConvertersOffice/app.config
@@ -1,6 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<runtime>
+	<configSections>
+  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+   <section name="SILConvertersOffice.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+  </sectionGroup>
+ </configSections>
+ <runtime>
 		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
@@ -52,4 +57,17 @@
       </dependentAssembly>
     </assemblyBinding>
 	</runtime>
+ <userSettings>
+  <SILConvertersOffice.Properties.Settings>
+   <setting name="DefaultWindowState" serializeAs="String">
+    <value>Normal</value>
+   </setting>
+   <setting name="WindowLocation" serializeAs="String">
+    <value>0, 0</value>
+   </setting>
+   <setting name="WindowSize" serializeAs="String">
+    <value>800, 450</value>
+   </setting>
+  </SILConvertersOffice.Properties.Settings>
+ </userSettings>
 </configuration>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/Properties/Settings.Designer.cs b/src/SILConvertersOffice07/Properties/Settings.Designer.cs
index e511f12a..76bdad5e 100644
--- a/src/SILConvertersOffice07/Properties/Settings.Designer.cs
+++ b/src/SILConvertersOffice07/Properties/Settings.Designer.cs
@@ -12,7 +12,7 @@ namespace SILConvertersOffice07.Properties {
     
     
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.8.1.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")]
     internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
         
         private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -55,5 +55,41 @@ public static Settings Default {
                 this["ConverterMappingRecentFiles"] = value;
             }
         }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("Normal")]
+        public global::System.Windows.Forms.FormWindowState DefaultWindowState {
+            get {
+                return ((global::System.Windows.Forms.FormWindowState)(this["DefaultWindowState"]));
+            }
+            set {
+                this["DefaultWindowState"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
+        public global::System.Drawing.Point WindowLocation {
+            get {
+                return ((global::System.Drawing.Point)(this["WindowLocation"]));
+            }
+            set {
+                this["WindowLocation"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("800, 450")]
+        public global::System.Drawing.Size WindowSize {
+            get {
+                return ((global::System.Drawing.Size)(this["WindowSize"]));
+            }
+            set {
+                this["WindowSize"] = value;
+            }
+        }
     }
 }
diff --git a/src/SILConvertersOffice07/Properties/Settings.settings b/src/SILConvertersOffice07/Properties/Settings.settings
index fdb4efbc..656226d5 100644
--- a/src/SILConvertersOffice07/Properties/Settings.settings
+++ b/src/SILConvertersOffice07/Properties/Settings.settings
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="SILConvertersOffice.Properties" GeneratedClassName="Settings">
+<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="SILConvertersOffice07.Properties" GeneratedClassName="Settings">
   <Profiles />
   <Settings>
     <Setting Name="RecentFindWhat" Type="System.Collections.Specialized.StringCollection" Scope="User">
@@ -11,5 +11,14 @@
     <Setting Name="ConverterMappingRecentFiles" Type="System.Collections.Specialized.StringCollection" Scope="User">
       <Value Profile="(Default)" />
     </Setting>
+    <Setting Name="DefaultWindowState" Type="System.Windows.Forms.FormWindowState" Scope="User">
+      <Value Profile="(Default)">Normal</Value>
+    </Setting>
+    <Setting Name="WindowLocation" Type="System.Drawing.Point" Scope="User">
+      <Value Profile="(Default)">0, 0</Value>
+    </Setting>
+    <Setting Name="WindowSize" Type="System.Drawing.Size" Scope="User">
+      <Value Profile="(Default)">800, 450</Value>
+    </Setting>
   </Settings>
 </SettingsFile>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/SILConvertersOffice07.csproj b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
index 7e41b3c6..ffda5730 100644
--- a/src/SILConvertersOffice07/SILConvertersOffice07.csproj
+++ b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
@@ -233,7 +233,6 @@
     </Compile>
     <Compile Include="..\SILConvertersOffice\TranslationHelperForm.cs">
       <Link>TranslationHelperForm.cs</Link>
-      <SubType>Form</SubType>
     </Compile>
     <Compile Include="..\SILConvertersOffice\TranslationHelperForm.designer.cs">
       <Link>TranslationHelperForm.designer.cs</Link>
diff --git a/src/SILConvertersOffice07/app.config b/src/SILConvertersOffice07/app.config
index a40e82f6..542091f8 100644
--- a/src/SILConvertersOffice07/app.config
+++ b/src/SILConvertersOffice07/app.config
@@ -1,6 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<runtime>
+	<configSections>
+  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+   <section name="SILConvertersOffice07.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+  </sectionGroup>
+ </configSections>
+ <runtime>
 		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
@@ -52,4 +57,17 @@
       </dependentAssembly>
     </assemblyBinding>
 	</runtime>
+ <userSettings>
+  <SILConvertersOffice07.Properties.Settings>
+   <setting name="DefaultWindowState" serializeAs="String">
+    <value>Normal</value>
+   </setting>
+   <setting name="WindowLocation" serializeAs="String">
+    <value>0, 0</value>
+   </setting>
+   <setting name="WindowSize" serializeAs="String">
+    <value>800, 450</value>
+   </setting>
+  </SILConvertersOffice07.Properties.Settings>
+ </userSettings>
 </configuration>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/Properties/Settings.Designer.cs b/src/SILConvertersOffice10/Properties/Settings.Designer.cs
index d30151b3..565afd43 100644
--- a/src/SILConvertersOffice10/Properties/Settings.Designer.cs
+++ b/src/SILConvertersOffice10/Properties/Settings.Designer.cs
@@ -12,7 +12,7 @@ namespace SILConvertersOffice10.Properties {
     
     
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.7.0.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")]
     internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
         
         private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -55,5 +55,41 @@ public static Settings Default {
                 this["ConverterMappingRecentFiles"] = value;
             }
         }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("Normal")]
+        public global::System.Windows.Forms.FormWindowState DefaultWindowState {
+            get {
+                return ((global::System.Windows.Forms.FormWindowState)(this["DefaultWindowState"]));
+            }
+            set {
+                this["DefaultWindowState"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
+        public global::System.Drawing.Point WindowLocation {
+            get {
+                return ((global::System.Drawing.Point)(this["WindowLocation"]));
+            }
+            set {
+                this["WindowLocation"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("800, 450")]
+        public global::System.Drawing.Size WindowSize {
+            get {
+                return ((global::System.Drawing.Size)(this["WindowSize"]));
+            }
+            set {
+                this["WindowSize"] = value;
+            }
+        }
     }
 }
diff --git a/src/SILConvertersOffice10/Properties/Settings.settings b/src/SILConvertersOffice10/Properties/Settings.settings
index fdb4efbc..6b2cdcd3 100644
--- a/src/SILConvertersOffice10/Properties/Settings.settings
+++ b/src/SILConvertersOffice10/Properties/Settings.settings
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="SILConvertersOffice.Properties" GeneratedClassName="Settings">
+<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="SILConvertersOffice10.Properties" GeneratedClassName="Settings">
   <Profiles />
   <Settings>
     <Setting Name="RecentFindWhat" Type="System.Collections.Specialized.StringCollection" Scope="User">
@@ -11,5 +11,14 @@
     <Setting Name="ConverterMappingRecentFiles" Type="System.Collections.Specialized.StringCollection" Scope="User">
       <Value Profile="(Default)" />
     </Setting>
+    <Setting Name="DefaultWindowState" Type="System.Windows.Forms.FormWindowState" Scope="User">
+      <Value Profile="(Default)">Normal</Value>
+    </Setting>
+    <Setting Name="WindowLocation" Type="System.Drawing.Point" Scope="User">
+      <Value Profile="(Default)">0, 0</Value>
+    </Setting>
+    <Setting Name="WindowSize" Type="System.Drawing.Size" Scope="User">
+      <Value Profile="(Default)">800, 450</Value>
+    </Setting>
   </Settings>
 </SettingsFile>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index 2cf59bf2..366811c3 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -227,7 +227,6 @@
     </Compile>
     <Compile Include="..\SILConvertersOffice\TranslationHelperForm.cs">
       <Link>TranslationHelperForm.cs</Link>
-      <SubType>Form</SubType>
     </Compile>
     <Compile Include="..\SILConvertersOffice\TranslationHelperForm.designer.cs">
       <Link>TranslationHelperForm.designer.cs</Link>
@@ -261,6 +260,11 @@
       <DesignTime>True</DesignTime>
       <DependentUpon>Resources.resx</DependentUpon>
     </Compile>
+    <Compile Include="Properties\Settings.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTimeSharedInput>True</DesignTimeSharedInput>
+      <DependentUpon>Settings.settings</DependentUpon>
+    </Compile>
   </ItemGroup>
   <ItemGroup>
     <EmbeddedResource Include="..\SILConvertersOffice\BaseConverterForm.resx">
@@ -294,6 +298,7 @@
     <EmbeddedResource Include="..\SILConvertersOffice07\RibbonPublisher.xml" />
     <EmbeddedResource Include="..\SILConvertersOffice\TranslationHelperForm.resx">
       <DependentUpon>TranslationHelperForm.cs</DependentUpon>
+      <SubType>Designer</SubType>
     </EmbeddedResource>
   </ItemGroup>
   <ItemGroup>
@@ -305,7 +310,10 @@
     <None Include="app.config" />
     <None Include="FieldWorks.snk" />
     <None Include="packages.config" />
-    <None Include="Properties\Settings.settings" />
+    <None Include="Properties\Settings.settings">
+      <Generator>SettingsSingleFileGenerator</Generator>
+      <LastGenOutput>Settings.Designer.cs</LastGenOutput>
+    </None>
   </ItemGroup>
   <ItemGroup>
     <Content Include="RibbonAccess.xml" />
diff --git a/src/SILConvertersOffice10/app.config b/src/SILConvertersOffice10/app.config
index cc4c784e..9275ffb4 100644
--- a/src/SILConvertersOffice10/app.config
+++ b/src/SILConvertersOffice10/app.config
@@ -1,6 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<runtime>
+	<configSections>
+  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+   <section name="SILConvertersOffice10.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+  </sectionGroup>
+ </configSections>
+ <runtime>
 		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
@@ -52,4 +57,17 @@
       </dependentAssembly>
     </assemblyBinding>
 	</runtime>
+ <userSettings>
+  <SILConvertersOffice10.Properties.Settings>
+   <setting name="DefaultWindowState" serializeAs="String">
+    <value>Normal</value>
+   </setting>
+   <setting name="WindowLocation" serializeAs="String">
+    <value>0, 0</value>
+   </setting>
+   <setting name="WindowSize" serializeAs="String">
+    <value>800, 450</value>
+   </setting>
+  </SILConvertersOffice10.Properties.Settings>
+ </userSettings>
 </configuration>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/Properties/Settings.Designer.cs b/src/SILConvertersOffice13/Properties/Settings.Designer.cs
index 971d72aa..0017f570 100644
--- a/src/SILConvertersOffice13/Properties/Settings.Designer.cs
+++ b/src/SILConvertersOffice13/Properties/Settings.Designer.cs
@@ -12,7 +12,7 @@ namespace SILConvertersOffice13.Properties {
     
     
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.8.1.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")]
     internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
         
         private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -55,5 +55,41 @@ public static Settings Default {
                 this["ConverterMappingRecentFiles"] = value;
             }
         }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("Normal")]
+        public global::System.Windows.Forms.FormWindowState DefaultWindowState {
+            get {
+                return ((global::System.Windows.Forms.FormWindowState)(this["DefaultWindowState"]));
+            }
+            set {
+                this["DefaultWindowState"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
+        public global::System.Drawing.Point WindowLocation {
+            get {
+                return ((global::System.Drawing.Point)(this["WindowLocation"]));
+            }
+            set {
+                this["WindowLocation"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("800, 450")]
+        public global::System.Drawing.Size WindowSize {
+            get {
+                return ((global::System.Drawing.Size)(this["WindowSize"]));
+            }
+            set {
+                this["WindowSize"] = value;
+            }
+        }
     }
 }
diff --git a/src/SILConvertersOffice13/Properties/Settings.settings b/src/SILConvertersOffice13/Properties/Settings.settings
index fdb4efbc..c1a1dd7f 100644
--- a/src/SILConvertersOffice13/Properties/Settings.settings
+++ b/src/SILConvertersOffice13/Properties/Settings.settings
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="SILConvertersOffice.Properties" GeneratedClassName="Settings">
+<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="SILConvertersOffice13.Properties" GeneratedClassName="Settings">
   <Profiles />
   <Settings>
     <Setting Name="RecentFindWhat" Type="System.Collections.Specialized.StringCollection" Scope="User">
@@ -11,5 +11,14 @@
     <Setting Name="ConverterMappingRecentFiles" Type="System.Collections.Specialized.StringCollection" Scope="User">
       <Value Profile="(Default)" />
     </Setting>
+    <Setting Name="DefaultWindowState" Type="System.Windows.Forms.FormWindowState" Scope="User">
+      <Value Profile="(Default)">Normal</Value>
+    </Setting>
+    <Setting Name="WindowLocation" Type="System.Drawing.Point" Scope="User">
+      <Value Profile="(Default)">0, 0</Value>
+    </Setting>
+    <Setting Name="WindowSize" Type="System.Drawing.Size" Scope="User">
+      <Value Profile="(Default)">800, 450</Value>
+    </Setting>
   </Settings>
 </SettingsFile>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index d7fd5c23..fdcdcaea 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -225,7 +225,6 @@
     </Compile>
     <Compile Include="..\SILConvertersOffice\TranslationHelperForm.cs">
       <Link>TranslationHelperForm.cs</Link>
-      <SubType>Form</SubType>
     </Compile>
     <Compile Include="..\SILConvertersOffice\TranslationHelperForm.designer.cs">
       <Link>TranslationHelperForm.designer.cs</Link>
diff --git a/src/SILConvertersOffice13/app.config b/src/SILConvertersOffice13/app.config
index cc4c784e..48843d34 100644
--- a/src/SILConvertersOffice13/app.config
+++ b/src/SILConvertersOffice13/app.config
@@ -1,6 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<runtime>
+	<configSections>
+  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+   <section name="SILConvertersOffice13.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+  </sectionGroup>
+ </configSections>
+ <runtime>
 		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
@@ -52,4 +57,17 @@
       </dependentAssembly>
     </assemblyBinding>
 	</runtime>
+ <userSettings>
+  <SILConvertersOffice13.Properties.Settings>
+   <setting name="DefaultWindowState" serializeAs="String">
+    <value>Normal</value>
+   </setting>
+   <setting name="WindowLocation" serializeAs="String">
+    <value>0, 0</value>
+   </setting>
+   <setting name="WindowSize" serializeAs="String">
+    <value>800, 450</value>
+   </setting>
+  </SILConvertersOffice13.Properties.Settings>
+ </userSettings>
 </configuration>
\ No newline at end of file

From bd17d59e79c825aadcb23f1a3dade8b75648ae40 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 06:33:29 -0500
Subject: [PATCH 35/71] a bunch of changes suggested by VS2022 for newer
 version of C#

---
 .../FindReplaceForm.Designer.cs               |  30 ++---
 src/SILConvertersOffice/FindReplaceForm.cs    |  49 ++++-----
 .../FontConvertersPicker.cs                   | 103 +++++++++---------
 .../FontConvertersPicker.designer.cs          |  22 ++--
 src/SILConvertersOffice/OfficeApp.cs          |  24 ++--
 5 files changed, 113 insertions(+), 115 deletions(-)

diff --git a/src/SILConvertersOffice/FindReplaceForm.Designer.cs b/src/SILConvertersOffice/FindReplaceForm.Designer.cs
index 94141d68..7afab97d 100644
--- a/src/SILConvertersOffice/FindReplaceForm.Designer.cs
+++ b/src/SILConvertersOffice/FindReplaceForm.Designer.cs
@@ -82,7 +82,7 @@ private void InitializeComponent()
             this.buttonReplaceAll.TabIndex = 7;
             this.buttonReplaceAll.Text = "Replace &All";
             this.buttonReplaceAll.UseVisualStyleBackColor = true;
-            this.buttonReplaceAll.Click += new System.EventHandler(this.buttonReplaceAll_Click);
+            this.buttonReplaceAll.Click += new System.EventHandler(this.ButtonReplaceAll_Click);
             // 
             // buttonReplace
             // 
@@ -92,7 +92,7 @@ private void InitializeComponent()
             this.buttonReplace.TabIndex = 6;
             this.buttonReplace.Text = "&Replace";
             this.buttonReplace.UseVisualStyleBackColor = true;
-            this.buttonReplace.Click += new System.EventHandler(this.buttonReplace_Click);
+            this.buttonReplace.Click += new System.EventHandler(this.ButtonReplace_Click);
             // 
             // buttonFindNext
             // 
@@ -102,7 +102,7 @@ private void InitializeComponent()
             this.buttonFindNext.TabIndex = 5;
             this.buttonFindNext.Text = "&Find Next";
             this.buttonFindNext.UseVisualStyleBackColor = true;
-            this.buttonFindNext.Click += new System.EventHandler(this.buttonFindNext_Click);
+            this.buttonFindNext.Click += new System.EventHandler(this.ButtonFindNext_Click);
             // 
             // checkBoxMatchCase
             // 
@@ -114,7 +114,7 @@ private void InitializeComponent()
             this.checkBoxMatchCase.TabIndex = 8;
             this.checkBoxMatchCase.Text = "Matc&h case";
             this.checkBoxMatchCase.UseVisualStyleBackColor = true;
-            this.checkBoxMatchCase.CheckedChanged += new System.EventHandler(this.checkBoxMatchCase_CheckedChanged);
+            this.checkBoxMatchCase.CheckedChanged += new System.EventHandler(this.CheckBoxMatchCase_CheckedChanged);
             // 
             // comboBoxReplaceWith
             // 
@@ -127,7 +127,7 @@ private void InitializeComponent()
             this.comboBoxReplaceWith.Name = "comboBoxReplaceWith";
             this.comboBoxReplaceWith.Size = new System.Drawing.Size(427, 29);
             this.comboBoxReplaceWith.TabIndex = 10;
-            this.comboBoxReplaceWith.SelectedIndexChanged += new System.EventHandler(this.comboBoxReplaceWith_SelectedIndexChanged);
+            this.comboBoxReplaceWith.SelectedIndexChanged += new System.EventHandler(this.ComboBoxReplaceWith_SelectedIndexChanged);
             // 
             // labelReplaceWith
             // 
@@ -149,7 +149,7 @@ private void InitializeComponent()
             this.comboBoxFindWhat.Name = "comboBoxFindWhat";
             this.comboBoxFindWhat.Size = new System.Drawing.Size(427, 29);
             this.comboBoxFindWhat.TabIndex = 9;
-            this.comboBoxFindWhat.SelectedIndexChanged += new System.EventHandler(this.comboBoxFindWhat_SelectedIndexChanged);
+            this.comboBoxFindWhat.SelectedIndexChanged += new System.EventHandler(this.ComboBoxFindWhat_SelectedIndexChanged);
             // 
             // labelFindWhat
             // 
@@ -170,7 +170,7 @@ private void InitializeComponent()
             this.buttonExpressionBuilder.TabIndex = 4;
             this.buttonExpressionBuilder.Text = ">";
             this.buttonExpressionBuilder.UseVisualStyleBackColor = true;
-            this.buttonExpressionBuilder.Click += new System.EventHandler(this.buttonExpressionBuilder_Click);
+            this.buttonExpressionBuilder.Click += new System.EventHandler(this.ButtonExpressionBuilder_Click);
             // 
             // contextMenuStripExprBuilder
             // 
@@ -201,7 +201,7 @@ private void InitializeComponent()
             this.regularExpressionHelpToolStripMenuItem});
             this.contextMenuStripExprBuilder.Name = "contextMenuStripExprBuilder";
             this.contextMenuStripExprBuilder.Size = new System.Drawing.Size(351, 484);
-            this.contextMenuStripExprBuilder.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.contextMenuStripExprBuilder_ItemClicked);
+            this.contextMenuStripExprBuilder.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.ContextMenuStripExprBuilder_ItemClicked);
             // 
             // MatchAnyCharacterToolStripMenuItem
             // 
@@ -343,7 +343,7 @@ private void InitializeComponent()
             this.regularExpressionHelpToolStripMenuItem.Name = "regularExpressionHelpToolStripMenuItem";
             this.regularExpressionHelpToolStripMenuItem.Size = new System.Drawing.Size(350, 22);
             this.regularExpressionHelpToolStripMenuItem.Text = "Regular Expression &Help";
-            this.regularExpressionHelpToolStripMenuItem.Click += new System.EventHandler(this.regularExpressionHelpToolStripMenuItem_Click);
+            this.regularExpressionHelpToolStripMenuItem.Click += new System.EventHandler(this.RegularExpressionHelpToolStripMenuItem_Click);
             // 
             // buttonCancel
             // 
@@ -354,7 +354,7 @@ private void InitializeComponent()
             this.buttonCancel.TabIndex = 11;
             this.buttonCancel.Text = "&Close";
             this.buttonCancel.UseVisualStyleBackColor = true;
-            this.buttonCancel.Click += new System.EventHandler(this.buttonCancel_Click);
+            this.buttonCancel.Click += new System.EventHandler(this.ButtonCancel_Click);
             // 
             // ecTextBoxFindWhat
             // 
@@ -366,7 +366,7 @@ private void InitializeComponent()
             this.ecTextBoxFindWhat.Size = new System.Drawing.Size(408, 29);
             this.ecTextBoxFindWhat.TabIndex = 1;
             this.ecTextBoxFindWhat.WordWrap = false;
-            this.ecTextBoxFindWhat.TextChanged += new System.EventHandler(this.ecTextBox_TextChanged);
+            this.ecTextBoxFindWhat.TextChanged += new System.EventHandler(this.EcTextBox_TextChanged);
             // 
             // ecTextBoxReplaceWith
             // 
@@ -378,7 +378,7 @@ private void InitializeComponent()
             this.ecTextBoxReplaceWith.Size = new System.Drawing.Size(408, 29);
             this.ecTextBoxReplaceWith.TabIndex = 3;
             this.ecTextBoxReplaceWith.WordWrap = false;
-            this.ecTextBoxReplaceWith.TextChanged += new System.EventHandler(this.ecTextBox_TextChanged);
+            this.ecTextBoxReplaceWith.TextChanged += new System.EventHandler(this.EcTextBox_TextChanged);
             // 
             // progressBar
             // 
@@ -393,9 +393,9 @@ private void InitializeComponent()
             // 
             this.backgroundWorker.WorkerReportsProgress = true;
             this.backgroundWorker.WorkerSupportsCancellation = true;
-            this.backgroundWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker_DoWork);
-            this.backgroundWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker_RunWorkerCompleted);
-            this.backgroundWorker.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.backgroundWorker_ProgressChanged);
+            this.backgroundWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(this.BackgroundWorker_DoWork);
+            this.backgroundWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.BackgroundWorker_RunWorkerCompleted);
+            this.backgroundWorker.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.BackgroundWorker_ProgressChanged);
             // 
             // FindReplaceForm
             // 
diff --git a/src/SILConvertersOffice/FindReplaceForm.cs b/src/SILConvertersOffice/FindReplaceForm.cs
index 90a37f83..70f0ad64 100644
--- a/src/SILConvertersOffice/FindReplaceForm.cs
+++ b/src/SILConvertersOffice/FindReplaceForm.cs
@@ -31,7 +31,7 @@ internal partial class FindReplaceForm : Form
         const string cstrClose = "&Close";
         const string cstrStop = "&Stop";
 
-        private WordFindReplaceDocument m_doc;
+        private readonly WordFindReplaceDocument m_doc;
         FindWordProcessor m_aWordByWordProcessor = null;
         protected SearchAreaType m_eSearchAreaType = SearchAreaType.eUnknown;
 
@@ -105,7 +105,7 @@ protected void ProcessButtonEx(FormButtons eFormButton)
 
                 // if the user clicked Find/Next, then don't give the Replace With text even if there is some
                 m_aWordByWordProcessor = new FindWordProcessor(ecTextBoxFindWhat.Text, ecTextBoxReplaceWith.Text,
-                    checkBoxMatchCase.Checked, ecTextBoxFindWhat.Font);
+                    checkBoxMatchCase.Checked);
             }
 
             // update the button pressed information
@@ -167,7 +167,7 @@ protected void DoWork(BackgroundWorker worker, WordFindReplaceDocument doc)
             doc.Search(worker);
         }
 
-        private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
+        private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
         {
             BackgroundWorker worker = (BackgroundWorker)sender;
             DoWork(worker, e.Argument as WordFindReplaceDocument);
@@ -175,7 +175,7 @@ private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
                 e.Cancel = true;
         }
 
-        private void backgroundWorker_ProgressChanged(object sender, ProgressChangedEventArgs e)
+        private void BackgroundWorker_ProgressChanged(object sender, ProgressChangedEventArgs e)
         {
             // for us the "progress" is a new range of the document we're searching thru
             int nValue = (int)e.ProgressPercentage;
@@ -190,7 +190,7 @@ private void backgroundWorker_ProgressChanged(object sender, ProgressChangedEven
                 });
         }
 
-        private void backgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
+        private void BackgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
         {
             bool bReplace = (m_aWordByWordProcessor.FormButton == FormButtons.ReplaceOnce) || (m_aWordByWordProcessor.FormButton == FormButtons.ReplaceAll);
             bool bContinue = false;  // start again pessimistic
@@ -308,7 +308,7 @@ private void backgroundWorker_RunWorkerCompleted(object sender, RunWorkerComplet
             base.Show();
         }
 
-        private void contextMenuStripExprBuilder_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
+        private void ContextMenuStripExprBuilder_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
         {
             string strItem = ((ToolStripItem)e.ClickedItem).Text;
             if (strItem != regularExpressionHelpToolStripMenuItem.Text)
@@ -348,51 +348,51 @@ protected void AddToComboBox(EcTextBox tb, ComboBox cb, System.Collections.Speci
             }
         }
 
-        private void buttonFindNext_Click(object sender, EventArgs e)
+        private void ButtonFindNext_Click(object sender, EventArgs e)
         {
             ProcessButton(FormButtons.Next);
         }
 
-        private void buttonReplace_Click(object sender, EventArgs e)
+        private void ButtonReplace_Click(object sender, EventArgs e)
         {
             ProcessButton(FormButtons.ReplaceOnce);
         }
 
-        private void buttonReplaceAll_Click(object sender, EventArgs e)
+        private void ButtonReplaceAll_Click(object sender, EventArgs e)
         {
             ProcessButton(FormButtons.ReplaceAll);
         }
 
-        private void ecTextBox_TextChanged(object sender, EventArgs e)
+        private void EcTextBox_TextChanged(object sender, EventArgs e)
         {
             m_eSearchAreaType = SearchAreaType.eUnknown;
             m_aWordByWordProcessor = null;
         }
 
-        private void buttonExpressionBuilder_Click(object sender, EventArgs e)
+        private void ButtonExpressionBuilder_Click(object sender, EventArgs e)
         {
             ToolStripDropDownDirection dir = ToolStripDropDownDirection.BelowRight;
             this.buttonExpressionBuilder.ContextMenuStrip.Show(PointToScreen(buttonExpressionBuilder.Location), dir);
         }
 
-        private void comboBoxFindWhat_SelectedIndexChanged(object sender, EventArgs e)
+        private void ComboBoxFindWhat_SelectedIndexChanged(object sender, EventArgs e)
         {
             ecTextBoxFindWhat.Text = (string)comboBoxFindWhat.SelectedItem;
         }
 
-        private void comboBoxReplaceWith_SelectedIndexChanged(object sender, EventArgs e)
+        private void ComboBoxReplaceWith_SelectedIndexChanged(object sender, EventArgs e)
         {
             ecTextBoxReplaceWith.Text = (string)comboBoxReplaceWith.SelectedItem;
         }
 
-        private void regularExpressionHelpToolStripMenuItem_Click(object sender, EventArgs e)
+        private void RegularExpressionHelpToolStripMenuItem_Click(object sender, EventArgs e)
         {
             // launch the ICU help
             string strCommandLine = Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles) + @"\SIL\Help\ICU Regular Expression Plug-in About box.htm";
             OfficeApp.LaunchProgram(strCommandLine, null);
         }
 
-        private void checkBoxMatchCase_CheckedChanged(object sender, EventArgs e)
+        private void CheckBoxMatchCase_CheckedChanged(object sender, EventArgs e)
         {
             m_aWordByWordProcessor = null;
         }
@@ -403,7 +403,7 @@ private void ResetBackgroundWorker()
                 this.backgroundWorker.CancelAsync();
         }
 
-        private void buttonCancel_Click(object sender, EventArgs e)
+        private void ButtonCancel_Click(object sender, EventArgs e)
         {
             if (buttonCancel.Text == cstrStop)
                 ResetBackgroundWorker();
@@ -425,10 +425,9 @@ internal class FindWordProcessor : OfficeDocumentProcessor
         protected string[] astrReplaceDoubleEscapeCodes = new string[] { @"\t", @"\r", @"\n", @"\a", @"\b", @"\f" };
         protected string[] astrReplaceEscapeCodes = new string[] { "\t", "\r", "\n", "\a", "\b", "\f" };
 
-        public FindWordProcessor(string strFindWhat, string strReplaceWith, bool bMatchCase, Font font)
+        public FindWordProcessor(string strFindWhat, string strReplaceWith, bool bMatchCase)
         {
-            if (m_aECs == null)
-                m_aECs = new EncConverters(true);
+            m_aECs ??= new EncConverters(true);
 
             // for some reason, the text that goes to constructing the 'Find what' part of the CRegexMatcher is 
             //  expecting doubly-escaped text (e.g. "\\r" for CR), but the text that goes for the 'Replace with'
@@ -439,7 +438,7 @@ public FindWordProcessor(string strFindWhat, string strReplaceWith, bool bMatchC
             for (int i = 0; i < nNumEscapeCodes; i++)
                 strReplaceWith = strReplaceWith.Replace(astrReplaceDoubleEscapeCodes[i], astrReplaceEscapeCodes[i]);
 
-            m_aECRegex = InitSearchFontConverter(strFindWhat, strReplaceWith, font, bMatchCase);
+            m_aECRegex = InitSearchFontConverter(strFindWhat, strReplaceWith, bMatchCase);
             AutoReplaceOnNextFind = false;  // we'll take care of this as well
 
             // Normally, we search the text one paragraph at a time for the FindWhat string, but if the user 
@@ -459,13 +458,13 @@ public FindWordProcessor(string strFindWhat, string strReplaceWith, bool bMatchC
 
         // initialize an EncConverter which will tell us when we've hit a match. Uses ICU RegEx (though, there's
         //  no reason this couldn't be .Net regex...)
-        protected IEncConverter InitSearchFontConverter(string strFindWhat, string strReplaceWith, Font font, bool bMatchCase)
+        protected IEncConverter InitSearchFontConverter(string strFindWhat, string strReplaceWith, bool bMatchCase)
         {
             // we're going to use a temporary ICU RegEx EncConverter to do our 'searching' for us. 
             // get a blank ICU Regex converter that we can program with our FindWhat string
             // but, it may be null if ICU isn't installed
             System.Diagnostics.Debug.Assert(m_aECs != null);
-            IEncConverter aIEC = null;
+            IEncConverter aIEC;
             try
             {
                 aIEC = m_aECs.NewEncConverterByImplementationType(EncConverters.strTypeSILicuRegex);
@@ -535,7 +534,7 @@ protected string[] GetFirstReplacementSplitArray(ref string strInput, ref string
                 int nInputLength = strInput.Length;
                 int nDiffLength = nInputLength;
                 int nTempInputLength = nInputLength;
-                string strTempInput = null;
+                string strTempInput;
                 do
                 {
                     // do a binary search until we get only one replacement
@@ -898,10 +897,10 @@ public void ProcessParagraphsFindAndReplace(FindWordProcessor aWordProcessor, Wo
             WordRange aRunRange = GetStartingRange(theRangeToSearch);
             if (aRunRange == null)
                 return;
+            object nOffsetParagraph = aWordProcessor.NumOfParagraphsToSearch - 1;
 
             // how many paragraphs ahead we have to look for a match
-            int nEndRangeToSearch = -1;   // might change from loop to loop if we do replacements (so update inside loop)
-            object nOffsetParagraph = aWordProcessor.NumOfParagraphsToSearch - 1;
+            int nEndRangeToSearch;
             do
             {
                 SearchAreaStart = aRunRange.Start;
diff --git a/src/SILConvertersOffice/FontConvertersPicker.cs b/src/SILConvertersOffice/FontConvertersPicker.cs
index b4d16bdb..953a0e02 100644
--- a/src/SILConvertersOffice/FontConvertersPicker.cs
+++ b/src/SILConvertersOffice/FontConvertersPicker.cs
@@ -28,10 +28,10 @@ namespace SILConvertersOffice
 {
     internal partial class FontConvertersPicker : Form
     {
-        private OfficeDocument m_doc = null;
-        protected DirectableEncConverter m_aECForAll = null;
-        protected DirectableEncConverter m_aECLast = null;
-        protected Hashtable m_mapEncConverters = new Hashtable();
+        private OfficeDocument m_doc;
+        protected DirectableEncConverter m_aECForAll;
+        protected DirectableEncConverter m_aECLast;
+        protected Hashtable m_mapEncConverters = new();
         protected const int nMaxRecentFiles = 15;
 
         const int nColumnFontNames = 0;
@@ -42,7 +42,7 @@ internal partial class FontConvertersPicker : Form
         protected const string cstrClickMsg = "Select a converter";
         protected const string cstrFontClickMsg = "Select a font to apply";
         protected const string cstrApplyECFormat = "Apply '{0}'?";
-        protected string m_strApplyEC = null;
+        protected string m_strApplyEC;
 
         /// <summary>
         /// FontConvertersPicker: to choose the font you want to process in the Word document
@@ -168,7 +168,7 @@ protected void InitConverterDetails(string strFontName, out string strConverterN
 
                         if (aIEC != null)
                         {
-                            DirectableEncConverter aEC = new DirectableEncConverter(aIEC);
+                            var aEC = new DirectableEncConverter(aIEC);
                             m_mapEncConverters.Add(strFontName, aEC);
                         }
                     }
@@ -177,7 +177,7 @@ protected void InitConverterDetails(string strFontName, out string strConverterN
 
             if (m_mapEncConverters.ContainsKey(strFontName))
             {
-                DirectableEncConverter aEC = (DirectableEncConverter)m_mapEncConverters[strFontName];
+                var aEC = (DirectableEncConverter)m_mapEncConverters[strFontName];
                 strConverterName = aEC.Name;
                 strTooltip = aEC.ToString();
                 if (aEC.TargetFont != null)
@@ -202,8 +202,7 @@ protected void InitConverterDetails(string strFontName, out string strConverterN
 
         protected void AddRow(string strFontName)
         {
-            string strConverterName, strTooltip, strFontNameOutput;
-            InitConverterDetails(strFontName, out strConverterName, out strTooltip, out strFontNameOutput);
+            InitConverterDetails(strFontName, out string strConverterName, out string strTooltip, out string strFontNameOutput);
 
             string[] row = { strFontName, strConverterName, strFontNameOutput };
             int nIndex = dataGridViewFontsConverters.Rows.Add(row);
@@ -215,19 +214,21 @@ public FontConverters SelectedFontConverters
         {
             get 
             {
-                FontConverters aFCs = new FontConverters();
+                FontConverters aFCs = new();
                 foreach (string strFontName in m_mapEncConverters.Keys)
                 {
                     DirectableEncConverter aIEC = (DirectableEncConverter)m_mapEncConverters[strFontName];
-                    FontConverter aFC = new FontConverter(strFontName, aIEC);
-                    aFC.RhsFont = aIEC.TargetFont;
+                    var aFC = new FontConverter(strFontName, aIEC)
+                    {
+                        RhsFont = aIEC.TargetFont
+                    };
                     aFCs.Add(strFontName, aFC);
                 }
                 return aFCs;
             }
         }
 
-        private void buttonOK_Click(object sender, EventArgs e)
+        private void ButtonOK_Click(object sender, EventArgs e)
         {
             if (m_mapEncConverters.Count > 0)
             {
@@ -238,7 +239,7 @@ private void buttonOK_Click(object sender, EventArgs e)
                 MessageBox.Show("You must choose at least one converter (or click Cancel)", OfficeApp.cstrCaption);
         }
 
-        private void checkBoxFontsInUse_CheckedChanged(object sender, EventArgs e)
+        private void CheckBoxFontsInUse_CheckedChanged(object sender, EventArgs e)
         {
             PopulateGrid();
         }
@@ -254,7 +255,7 @@ private void ResetBackgroundWorker()
                 this.backgroundWorker.CancelAsync();
         }
 
-        private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
+        private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
         {
             DoWork(sender as BackgroundWorker, e.Argument as OfficeDocument);
         }
@@ -270,7 +271,7 @@ protected void DoWork(BackgroundWorker worker, OfficeDocument doc)
                 nWordCount = 0;
             }
             */
-            FontNamesInUseProcessor aDocumentProcess = new FontNamesInUseProcessor(nWordCount, worker);
+            var aDocumentProcess = new FontNamesInUseProcessor(nWordCount, worker);
             
             try
             {
@@ -282,29 +283,28 @@ protected void DoWork(BackgroundWorker worker, OfficeDocument doc)
             }
         }
 
-        private void backgroundWorker_ProgressChanged(object sender, ProgressChangedEventArgs e)
+        private void BackgroundWorker_ProgressChanged(object sender, ProgressChangedEventArgs e)
         {
             // for us the "progress" is a new font found (if not null)
             if (e.UserState != null)
             {
-                string[] aStrs = (string[])e.UserState;
+                var aStrs = (string[])e.UserState;
                 System.Diagnostics.Debug.Assert(aStrs.Length == 2);
-                string strFontName = aStrs[0];
-                string strWord = aStrs[1];  // in case we want to 
+                var strFontName = aStrs[0];
                 AddRow(strFontName);
             }
             else
                 progressBarFontsInUse.PerformStep();
         }
 
-        private void backgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
+        private void BackgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
         {
             if (e.Error != null)
                 MessageBox.Show(e.Error.Message, OfficeApp.cstrCaption);
             progressBarFontsInUse.Visible = false;
         }
 
-        private void setDefaultConverterToolStripMenuItem_Click(object sender, EventArgs e)
+        private void SetDefaultConverterToolStripMenuItem_Click(object sender, EventArgs e)
         {
             EncConverters aECs = OfficeApp.GetEncConverters;
             if (aECs != null)
@@ -312,7 +312,7 @@ private void setDefaultConverterToolStripMenuItem_Click(object sender, EventArgs
                 IEncConverter aIEC = aECs.AutoSelectWithTitle(ConvType.Unknown, "Select Default Converter");
                 if (aIEC != null)
                 {
-                    DirectableEncConverter aEC = new DirectableEncConverter(aIEC.Name, aIEC.DirectionForward, aIEC.NormalizeOutput);
+                    var aEC = new DirectableEncConverter(aIEC.Name, aIEC.DirectionForward, aIEC.NormalizeOutput);
                     foreach (DataGridViewRow aRow in dataGridViewFontsConverters.Rows)
                     {
                         string strFontName = (string)aRow.Cells[nColumnFontNames].Value;
@@ -336,8 +336,7 @@ private void UpdateConverterNames()
             foreach (DataGridViewRow aRow in dataGridViewFontsConverters.Rows)
             {
                 string strFontname = (string)aRow.Cells[nColumnFontNames].Value;
-                string strConverterName, strTooltip, strFontNameOutput;
-                InitConverterDetails(strFontname, out strConverterName, out strTooltip, out strFontNameOutput);
+                InitConverterDetails(strFontname, out string strConverterName, out string strTooltip, out string strFontNameOutput);
                 DataGridViewCell cell = aRow.Cells[nColumnConverterNames];
                 cell.Value = strConverterName;
                 cell.ToolTipText = strTooltip;
@@ -345,18 +344,20 @@ private void UpdateConverterNames()
             }
         }
 
-        private void newConverterMappingToolStripMenuItem_Click(object sender, EventArgs e)
+        private void NewConverterMappingToolStripMenuItem_Click(object sender, EventArgs e)
         {
             m_mapEncConverters.Clear();
             UpdateConverterNames();
         }
 
-        private void openConverterMappingToolStripMenuItem_Click(object sender, EventArgs e)
+        private void OpenConverterMappingToolStripMenuItem_Click(object sender, EventArgs e)
         {
-            OpenFileDialog dlgSettings = new OpenFileDialog();
-            dlgSettings.DefaultExt = "fcm";
-            dlgSettings.InitialDirectory = OfficeApp.GetAppDataDir;
-            dlgSettings.Filter = "Font Converter mapping files (*.fcm)|*.fcm|All files|*.*";
+            var dlgSettings = new OpenFileDialog
+            {
+                DefaultExt = "fcm",
+                InitialDirectory = OfficeApp.GetAppDataDir,
+                Filter = "Font Converter mapping files (*.fcm)|*.fcm|All files|*.*"
+            };
 
             if (dlgSettings.ShowDialog() == DialogResult.OK)
             {
@@ -367,15 +368,17 @@ private void openConverterMappingToolStripMenuItem_Click(object sender, EventArg
         protected void LoadMappingFile(string strFilename)
         {
             m_mapEncConverters = null;
-            FileStream fs = new FileStream(strFilename, FileMode.Open);
+            var fs = new FileStream(strFilename, FileMode.Open);
 
             // Construct a SoapFormatter and use it 
             // to serialize the data to the stream.
             try
             {
-                SoapFormatter formatter = new SoapFormatter();
-                formatter.Binder = new DirectableEncConverterDeserializationBinder();
-                formatter.AssemblyFormat = System.Runtime.Serialization.Formatters.FormatterAssemblyStyle.Simple;
+                SoapFormatter formatter = new()
+                {
+                    Binder = new DirectableEncConverterDeserializationBinder(),
+                    AssemblyFormat = System.Runtime.Serialization.Formatters.FormatterAssemblyStyle.Simple
+                };
                 m_mapEncConverters = (Hashtable)formatter.Deserialize(fs);
                 AddToConverterMappingRecentlyUsed(strFilename);
             }
@@ -392,11 +395,13 @@ protected void LoadMappingFile(string strFilename)
                 UpdateConverterNames();
         }
 
-        private void saveConverterMappingToolStripMenuItem_Click(object sender, EventArgs e)
+        private void SaveConverterMappingToolStripMenuItem_Click(object sender, EventArgs e)
         {
-            SaveFileDialog dlgSettings = new SaveFileDialog();
-            dlgSettings.DefaultExt = "fcm";
-            dlgSettings.FileName = "Font Converter mapping1.fcm";
+            SaveFileDialog dlgSettings = new()
+            {
+                DefaultExt = "fcm",
+                FileName = "Font Converter mapping1.fcm"
+            };
             if (!Directory.Exists(OfficeApp.GetAppDataDir))
                 Directory.CreateDirectory(OfficeApp.GetAppDataDir);
             dlgSettings.InitialDirectory = OfficeApp.GetAppDataDir;
@@ -405,8 +410,8 @@ private void saveConverterMappingToolStripMenuItem_Click(object sender, EventArg
             {
                 // Construct a SoapFormatter and use it 
                 // to serialize the data to the stream.
-                FileStream fs = new FileStream(dlgSettings.FileName, FileMode.Create);
-                SoapFormatter formatter = new SoapFormatter();
+                var fs = new FileStream(dlgSettings.FileName, FileMode.Create);
+                var formatter = new SoapFormatter();
                 try
                 {
                     formatter.AssemblyFormat = System.Runtime.Serialization.Formatters.FormatterAssemblyStyle.Simple;
@@ -424,7 +429,7 @@ private void saveConverterMappingToolStripMenuItem_Click(object sender, EventArg
             }
         }
 
-        private void dataGridViewFontsConverters_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
+        private void DataGridViewFontsConverters_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
         {
             int nColumnIndex = e.ColumnIndex;
             // if the user clicks on the header... that doesn't work
@@ -533,7 +538,7 @@ public void AddToConverterMappingRecentlyUsed(string strFilename)
             Settings.Default.Save();
         }
 
-        private void recentFilesToolStripMenuItem_Click(object sender, EventArgs e)
+        private void RecentFilesToolStripMenuItem_Click(object sender, EventArgs e)
         {
             ToolStripDropDownItem aRecentFile = (ToolStripDropDownItem)sender;
             try
@@ -550,7 +555,7 @@ private void recentFilesToolStripMenuItem_Click(object sender, EventArgs e)
             }
         }
 
-        private void converterMappingToolStripMenuItem_DropDownOpening(object sender, EventArgs e)
+        private void ConverterMappingToolStripMenuItem_DropDownOpening(object sender, EventArgs e)
         {
             bool bMappingsExist = (m_mapEncConverters.Count > 0);
             this.newConverterMappingToolStripMenuItem.Enabled = bMappingsExist;
@@ -570,22 +575,22 @@ private void converterMappingToolStripMenuItem_DropDownOpening(object sender, Ev
     /// </summary>
     internal class FontNamesInUseProcessor : OfficeDocumentProcessor
     {
-        BackgroundWorker m_worker = null; // who we send updates to
-        List<string> m_astrListFontNames = new List<string>();
+        readonly BackgroundWorker m_worker; // who we send updates to
+        readonly List<string> m_astrListFontNames = new();
         int m_nCount = 0;
-        int m_nModulo = 10;
+        readonly int m_nModulo = 10;
         const int cnNumSteps = 50;
 
         public FontNamesInUseProcessor(int nDocumentWordCount, BackgroundWorker worker)
         {
-            Process = myWordProcessor;
+            Process = MyWordProcessor;
 
             // get a rough estimate of the number of words in the document
             m_nModulo = (nDocumentWordCount == 0) ? 0 : Math.Max(nDocumentWordCount / cnNumSteps, 2);
             m_worker = worker;
         }
 
-        protected bool myWordProcessor(OfficeRange aWordRange, ref int nCharIndex)
+        protected bool MyWordProcessor(OfficeRange aWordRange, ref int nCharIndex)
         {
             if (m_worker.CancellationPending)
                 return false;
diff --git a/src/SILConvertersOffice/FontConvertersPicker.designer.cs b/src/SILConvertersOffice/FontConvertersPicker.designer.cs
index 390b6a42..b62849c3 100644
--- a/src/SILConvertersOffice/FontConvertersPicker.designer.cs
+++ b/src/SILConvertersOffice/FontConvertersPicker.designer.cs
@@ -60,7 +60,7 @@ private void InitializeComponent()
             this.buttonOK.TabIndex = 1;
             this.buttonOK.Text = "OK";
             this.buttonOK.UseVisualStyleBackColor = true;
-            this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click);
+            this.buttonOK.Click += new System.EventHandler(this.ButtonOK_Click);
             // 
             // buttonCancel
             // 
@@ -85,15 +85,15 @@ private void InitializeComponent()
             this.checkBoxFontsInUse.TabIndex = 3;
             this.checkBoxFontsInUse.Text = "&Limit to fonts in use";
             this.checkBoxFontsInUse.UseVisualStyleBackColor = true;
-            this.checkBoxFontsInUse.CheckedChanged += new System.EventHandler(this.checkBoxFontsInUse_CheckedChanged);
+            this.checkBoxFontsInUse.CheckedChanged += new System.EventHandler(this.CheckBoxFontsInUse_CheckedChanged);
             // 
             // backgroundWorker
             // 
             this.backgroundWorker.WorkerReportsProgress = true;
             this.backgroundWorker.WorkerSupportsCancellation = true;
-            this.backgroundWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker_DoWork);
-            this.backgroundWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker_RunWorkerCompleted);
-            this.backgroundWorker.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.backgroundWorker_ProgressChanged);
+            this.backgroundWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(this.BackgroundWorker_DoWork);
+            this.backgroundWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.BackgroundWorker_RunWorkerCompleted);
+            this.backgroundWorker.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.BackgroundWorker_ProgressChanged);
             // 
             // dataGridViewFontsConverters
             // 
@@ -113,7 +113,7 @@ private void InitializeComponent()
             this.dataGridViewFontsConverters.RowHeadersVisible = false;
             this.dataGridViewFontsConverters.Size = new System.Drawing.Size(425, 319);
             this.dataGridViewFontsConverters.TabIndex = 4;
-            this.dataGridViewFontsConverters.CellMouseClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.dataGridViewFontsConverters_CellMouseClick);
+            this.dataGridViewFontsConverters.CellMouseClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.DataGridViewFontsConverters_CellMouseClick);
             // 
             // ColumnFontNames
             // 
@@ -164,7 +164,7 @@ private void InitializeComponent()
             this.converterMappingToolStripMenuItem.Name = "converterMappingToolStripMenuItem";
             this.converterMappingToolStripMenuItem.Size = new System.Drawing.Size(116, 20);
             this.converterMappingToolStripMenuItem.Text = "&Converter Mappings";
-            this.converterMappingToolStripMenuItem.DropDownOpening += new System.EventHandler(this.converterMappingToolStripMenuItem_DropDownOpening);
+            this.converterMappingToolStripMenuItem.DropDownOpening += new System.EventHandler(this.ConverterMappingToolStripMenuItem_DropDownOpening);
             // 
             // setDefaultConverterToolStripMenuItem
             // 
@@ -172,7 +172,7 @@ private void InitializeComponent()
             this.setDefaultConverterToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
             this.setDefaultConverterToolStripMenuItem.Text = "Set &Default Converter";
             this.setDefaultConverterToolStripMenuItem.ToolTipText = "Select a converter to be applied to all fonts that aren\'t currently configured";
-            this.setDefaultConverterToolStripMenuItem.Click += new System.EventHandler(this.setDefaultConverterToolStripMenuItem_Click);
+            this.setDefaultConverterToolStripMenuItem.Click += new System.EventHandler(this.SetDefaultConverterToolStripMenuItem_Click);
             // 
             // toolStripSeparator1
             // 
@@ -185,7 +185,7 @@ private void InitializeComponent()
             this.newConverterMappingToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
             this.newConverterMappingToolStripMenuItem.Text = "&New";
             this.newConverterMappingToolStripMenuItem.ToolTipText = "Click to reset the current mapping of font names to system converters";
-            this.newConverterMappingToolStripMenuItem.Click += new System.EventHandler(this.newConverterMappingToolStripMenuItem_Click);
+            this.newConverterMappingToolStripMenuItem.Click += new System.EventHandler(this.NewConverterMappingToolStripMenuItem_Click);
             // 
             // openConverterMappingToolStripMenuItem
             // 
@@ -193,7 +193,7 @@ private void InitializeComponent()
             this.openConverterMappingToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
             this.openConverterMappingToolStripMenuItem.Text = "&Load";
             this.openConverterMappingToolStripMenuItem.ToolTipText = "Click to load a previously saved mapping of font names to system converters";
-            this.openConverterMappingToolStripMenuItem.Click += new System.EventHandler(this.openConverterMappingToolStripMenuItem_Click);
+            this.openConverterMappingToolStripMenuItem.Click += new System.EventHandler(this.OpenConverterMappingToolStripMenuItem_Click);
             // 
             // recentToolStripMenuItem
             // 
@@ -207,7 +207,7 @@ private void InitializeComponent()
             this.saveConverterMappingToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
             this.saveConverterMappingToolStripMenuItem.Text = "&Save";
             this.saveConverterMappingToolStripMenuItem.ToolTipText = "Click to save the current mapping of font names to system converters";
-            this.saveConverterMappingToolStripMenuItem.Click += new System.EventHandler(this.saveConverterMappingToolStripMenuItem_Click);
+            this.saveConverterMappingToolStripMenuItem.Click += new System.EventHandler(this.SaveConverterMappingToolStripMenuItem_Click);
             // 
             // progressBarFontsInUse
             // 
diff --git a/src/SILConvertersOffice/OfficeApp.cs b/src/SILConvertersOffice/OfficeApp.cs
index 8125f16a..b32dde1d 100644
--- a/src/SILConvertersOffice/OfficeApp.cs
+++ b/src/SILConvertersOffice/OfficeApp.cs
@@ -105,7 +105,7 @@ internal static void LaunchProgram(string strProgram, string strArguments)
         {
             try
             {
-                Process myProcess = new Process { StartInfo = { FileName = strProgram, Arguments = strArguments } };
+                Process myProcess = new() { StartInfo = { FileName = strProgram, Arguments = strArguments } };
                 myProcess.Start();
             }
             catch { }    // we tried...
@@ -145,7 +145,6 @@ internal static void ReleaseComObject(object obj)
             }
             finally
             {
-                obj = null;
             }
         }
 
@@ -231,8 +230,7 @@ public virtual int EndIndex
         // not working for publisher
         public virtual void Select()
         {
-            if( m_typeRange != null )
-                m_typeRange.InvokeMember("Select", BindingFlags.InvokeMethod, null, m_aRangeBasedOn, null);
+            m_typeRange?.InvokeMember("Select", BindingFlags.InvokeMethod, null, m_aRangeBasedOn, null);
         }
 
         public abstract string Text
@@ -252,16 +250,14 @@ public virtual string FontName
             set
             {
                 object font = GetProperty("Font");
-                if( m_typeRange != null )
-                    m_typeRange.InvokeMember("Name", BindingFlags.SetProperty, null, font, new object[] { value });
+                m_typeRange?.InvokeMember("Name", BindingFlags.SetProperty, null, font, new object[] { value });
             }
         }
 
         protected void SetProperty(string strPropertyName, object value)
         {
             System.Diagnostics.Debug.Assert(m_aRangeBasedOn != null);
-            if( m_typeRange != null )
-                m_typeRange.InvokeMember(strPropertyName, BindingFlags.SetProperty, null, m_aRangeBasedOn, new object[] { value });
+            m_typeRange?.InvokeMember(strPropertyName, BindingFlags.SetProperty, null, m_aRangeBasedOn, new object[] { value });
         }
 
         protected object GetProperty(string strPropertyName)
@@ -487,7 +483,7 @@ internal class OfficeDocumentProcessor
         public delegate bool ProcessWord(OfficeRange aWordRange, ref int nCharIndex);
         private ProcessWord m_aWordProcessor = null;
         protected FontConverters m_mapFontsEncountered = null;
-        protected Dictionary<string, string> m_mapCheckedInputStrings = new Dictionary<string, string>();
+        protected Dictionary<string, string> m_mapCheckedInputStrings = new();
         protected FontConverter m_aFC = null;
         protected FontConverters m_aFCs = null;
         protected IBaseConverterForm m_formDisplayValues = null;
@@ -626,7 +622,7 @@ protected virtual FormButtons ConvertProcessing(OfficeRange aWordRange, FontConv
 
         public bool CompareInputOutputProcess(OfficeRange aWordRange, ref int nCharIndex)
         {
-            FormButtons res = FormButtons.None;
+            FormButtons res;
             do
             {
                 string strInput = aWordRange.Text;
@@ -658,8 +654,7 @@ public bool CompareInputOutputProcess(OfficeRange aWordRange, ref int nCharIndex
                 }
 
                 // see if we've already checked this word
-                string strReplace = null;
-                if (!m_mapCheckedInputStrings.TryGetValue(strInput, out strReplace))
+                if (!m_mapCheckedInputStrings.TryGetValue(strInput, out string strReplace))
                 {
                     res = ConvertProcessing(aWordRange, aThisFC, strInput, ref strReplace);
 
@@ -695,7 +690,7 @@ public bool CompareInputOutputProcess(OfficeRange aWordRange, ref int nCharIndex
         protected virtual FontConverter QueryForFontConvert(string strFontName)
         {
             FontConverter aFC = null;
-            FontConvertersPicker aFontConverterPicker = new FontConvertersPicker(strFontName);
+            FontConvertersPicker aFontConverterPicker = new(strFontName);
             if (aFontConverterPicker.ShowDialog() == DialogResult.OK)
                 aFC = aFontConverterPicker.SelectedFontConverters[strFontName];
             return aFC;
@@ -707,8 +702,7 @@ protected FontConverter QueryUserForFontScan(string strFontName)
                 return null;
 
             // make sure our collection exists
-            if (m_mapFontsEncountered == null)
-                m_mapFontsEncountered = new FontConverters();
+            m_mapFontsEncountered ??= new FontConverters();
 
             if (!m_mapFontsEncountered.ContainsKey(strFontName))
             {

From c85dc0bb1b1305447bb1f25ac6ece70fc0034f48 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 06:34:20 -0500
Subject: [PATCH 36/71] moved the 'reset' ribbon button to the end, so it's
 more clear

---
 src/SILConvertersOffice/PubApp.cs        | 8 ++++----
 src/SILConvertersOffice07/RibbonWord.xml | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/SILConvertersOffice/PubApp.cs b/src/SILConvertersOffice/PubApp.cs
index 5152ea87..959f53ca 100644
--- a/src/SILConvertersOffice/PubApp.cs
+++ b/src/SILConvertersOffice/PubApp.cs
@@ -65,10 +65,6 @@ public override void LoadMenu()
                     "Click this item to convert the selected text only",
                     new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(SelectionConvert_Click));
 
-                AddMenu(ref ResetMenuBtn, NewMenuBar, "&Reset",
-                    "Reset the unfinished conversion processes",
-                    new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(Reset_Click));
-
                 AddMenu(ref ConvertParagraphsIsoFormatMenu, NewMenuBar, "Convert by &paragraph (iso formatted)",
                     "Click this item to convert the document from the cursor on down, paragraph-by-paragraph, but in chunks that keep the formatting the same (which might ruin the Translation if using Bing or DeepL translators)",
                     new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(ConvertParagraphs_Click));
@@ -76,6 +72,10 @@ public override void LoadMenu()
                 AddMenu(ref ConvertParagraphsMenu, NewMenuBar, "Convert by paragraph",
                     "Click this item to convert the document from the cursor on down, paragraph-by-paragraph, ignoring formatting (so formatting will be lost, but you'll get whole paragraphs translated as a unit)",
                     new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(ConvertParagraphs_IgnoreStyle_Click));
+
+                AddMenu(ref ResetMenuBtn, NewMenuBar, "&Reset",
+                    "Reset the unfinished conversion processes",
+                    new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(Reset_Click));
             }
             catch (Exception ex)
             {
diff --git a/src/SILConvertersOffice07/RibbonWord.xml b/src/SILConvertersOffice07/RibbonWord.xml
index 06b87b63..e10b93c6 100644
--- a/src/SILConvertersOffice07/RibbonWord.xml
+++ b/src/SILConvertersOffice07/RibbonWord.xml
@@ -12,12 +12,12 @@
             size="large" onAction="Button_Clicked" screentip="Click this item to search the document using Regular Expression syntax" />
           <button id="SILConvertersOffice.WordApp.RoundTripCheck_Click" label="Check round-trip conversion"
             size="large" onAction="Button_Clicked" screentip="Click this item to check a bidirectional converter's round-trip capability" />
-          <button id="SILConvertersOffice.WordApp.Reset_Click" label="Reset"
-            size="large" onAction="Button_Clicked" screentip="Reset the unfinished conversion processes" />
           <button id="SILConvertersOffice.WordApp.ConvertParagraphs_Click" label="Convert by paragraph (iso formatted)"
             size="large" onAction="Button_Clicked" screentip="Click this item to convert the document from the cursor on down, paragraph-by-paragraph, but in chunks that keep the formatting the same" />
           <button id="SILConvertersOffice.WordApp.ConvertParagraphs_IgnoreStyle_Click" label="Convert by paragraph"
             size="large" onAction="Button_Clicked" screentip="Click this item to convert the document from the cursor on down, paragraph-by-paragraph, ignoring formatting (so formatting will be lost, but you'll get whole paragraphs translated as a unit)" />
+          <button id="SILConvertersOffice.WordApp.Reset_Click" label="Reset"
+            size="large" onAction="Button_Clicked" screentip="Reset the unfinished conversion processes" />
         </group>
       </tab>
     </tabs>

From e7b09db3420753910883ce09fe1c2c15e965ce29 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 06:35:25 -0500
Subject: [PATCH 37/71] added support to pub and the main Word app for the new
 intermediate class that allows for multiple TranslationHelperForm instances
 based on Font + Converter

---
 src/SILConvertersOffice/PubApp.cs  | 2 +-
 src/SILConvertersOffice/WordApp.cs | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/SILConvertersOffice/PubApp.cs b/src/SILConvertersOffice/PubApp.cs
index 959f53ca..577cd716 100644
--- a/src/SILConvertersOffice/PubApp.cs
+++ b/src/SILConvertersOffice/PubApp.cs
@@ -295,7 +295,7 @@ private void ParagraphByParagraph(OfficeTextDocument.ProcessingType eIsoFormatte
                     return;
 
                 PubRangeDocument doc = new PubRangeDocument(Application.ActiveDocument, eIsoFormattedRun);
-                OfficeDocumentProcessor aSelectionProcessor = GetDocumentProcessor((FontConverters)null, new SILConvertersOffice.TranslationHelperForm());
+                OfficeDocumentProcessor aSelectionProcessor = GetDocumentProcessor((FontConverters)null, new SILConvertersOffice.TranslationHelperForms());
 
                 if (aSelectionProcessor != null)
                     doc.ProcessWordByWord(aSelectionProcessor, OfficeTextDocument.ProcessingType.eIsoFormattedRun);
diff --git a/src/SILConvertersOffice/WordApp.cs b/src/SILConvertersOffice/WordApp.cs
index 462cbd27..9804dec4 100644
--- a/src/SILConvertersOffice/WordApp.cs
+++ b/src/SILConvertersOffice/WordApp.cs
@@ -290,7 +290,7 @@ private void ParagraphByParagraph(OfficeTextDocument.ProcessingType processingTy
                 // keep reusing the same doc processor (in case we're doing sub-paragraph selections and have already specified which cnvtr to use for a given font)
                 //  user must click the 'Reset' button, if they want to be requiried about which cnvtr to use
                 if (m_officeDocumentProcessor == null)
-                    m_officeDocumentProcessor = new OfficeDocumentProcessor((FontConverters)null, new SILConvertersOffice.TranslationHelperForm());
+                    m_officeDocumentProcessor = new OfficeDocumentProcessor((FontConverters)null, new SILConvertersOffice.TranslationHelperForms());
 
                 // start where the cursor is currently
                 m_officeDocumentProcessor.LeftOvers = doc.SelectionRange;

From 3c22e37dbbfec0108c125e76bb6e381fef4aeb18 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 06:36:40 -0500
Subject: [PATCH 38/71] update the version reference of SpellFixer in its merge
 module, which is launched from reflection/COM and needs to match

---
 .../SpellFixerEc64bitMM/SpellFixerEc_MergeModule.wxs   | 10 +++++-----
 Installer/SpellFixerEcMM/SpellFixerEc_MergeModule.wxs  | 10 +++++-----
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/Installer/SpellFixerEc64bitMM/SpellFixerEc_MergeModule.wxs b/Installer/SpellFixerEc64bitMM/SpellFixerEc_MergeModule.wxs
index 92d6b6ec..0999b692 100644
--- a/Installer/SpellFixerEc64bitMM/SpellFixerEc_MergeModule.wxs
+++ b/Installer/SpellFixerEc64bitMM/SpellFixerEc_MergeModule.wxs
@@ -17,12 +17,12 @@
           <File Id="SpellingFixerEC.dll" Name="SpellingFixerEC.dll" KeyPath="yes" Assembly=".net" AssemblyManifest="SpellingFixerEC.dll" AssemblyApplication="SpellingFixerEC.dll"
                 Source="..\..\output\x64\release\SpellingFixerEC.dll" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="Class" Value="SpellingFixerEC.SpellingFixerEC" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="Assembly" Value="SpellingFixerEC, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="CodeBase" Value="file:///[#SpellingFixerEC.dll]" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="Class" Value="SpellingFixerEC.SpellingFixerEC" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="Assembly" Value="SpellingFixerEC, Version=5.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="CodeBase" Value="file:///[#SpellingFixerEC.dll]" Type="string" Action="write" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="Class" Value="SpellingFixerEC.SpellingFixerEC" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="Assembly" Value="SpellingFixerEC, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="Assembly" Value="SpellingFixerEC, Version=5.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="CodeBase" Value="file:///[#SpellingFixerEC.dll]" Type="string" Action="write" />
         </Component>
diff --git a/Installer/SpellFixerEcMM/SpellFixerEc_MergeModule.wxs b/Installer/SpellFixerEcMM/SpellFixerEc_MergeModule.wxs
index fd553a19..e24ae330 100644
--- a/Installer/SpellFixerEcMM/SpellFixerEc_MergeModule.wxs
+++ b/Installer/SpellFixerEcMM/SpellFixerEc_MergeModule.wxs
@@ -16,12 +16,12 @@
           <File Id="SpellingFixerEC.dll" Name="SpellingFixerEC.dll" KeyPath="yes" Assembly=".net" AssemblyManifest="SpellingFixerEC.dll" AssemblyApplication="SpellingFixerEC.dll"
                 Source="..\..\output\x86\release\SpellingFixerEC.dll" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="Class" Value="SpellingFixerEC.SpellingFixerEC" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="Assembly" Value="SpellingFixerEC, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\4.0.0.0" Name="CodeBase" Value="file:///[#SpellingFixerEC.dll]" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="Class" Value="SpellingFixerEC.SpellingFixerEC" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="Assembly" Value="SpellingFixerEC, Version=5.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32\5.0.0.0" Name="CodeBase" Value="file:///[#SpellingFixerEC.dll]" Type="string" Action="write" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="Class" Value="SpellingFixerEC.SpellingFixerEC" Type="string" Action="write" />
-          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="Assembly" Value="SpellingFixerEC, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
+          <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="Assembly" Value="SpellingFixerEC, Version=5.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485" Type="string" Action="write" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="RuntimeVersion" Value="v4.0.30319" Type="string" Action="write" />
           <RegistryValue Root="HKCR" Key="CLSID\{B3256CF8-FA9B-310D-89A6-9268B37A9A72}\InprocServer32" Name="CodeBase" Value="file:///[#SpellingFixerEC.dll]" Type="string" Action="write" />
         </Component>

From 713386bb607e74e993714c72a1fa1f3d9f5f4da4 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 06:37:39 -0500
Subject: [PATCH 39/71] backTranslationHelperCtrl changed behavior to send the
 button pressed *after* writing the text out, so now 'MoveToNext' also means
 that we want to return 'ReplaceOnce' to the caller

---
 src/SILConvertersOffice/TranslationHelperForm.cs | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index ff25b172..79d4c940 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -47,7 +47,7 @@ string IBaseConverterForm.ForwardString
         FormButtons IBaseConverterForm.Show(FontConverter aThisFC, string strInput, string strOutput)
         {
             if (!Forms.TryGetValue(aThisFC, out var form))
-    {
+            {
                 form = new TranslationHelperForm();
             }
 
@@ -246,10 +246,8 @@ void IBackTranslationHelperDataSource.ButtonPressed(ButtonPressed button)
                 switch(button.ToString())
                 {
                     case "MoveToNext":
-                        ButtonPressed = FormButtons.Next;
-                        break;
                     case "WriteToTarget":
-                        ButtonPressed = FormButtons.ReplaceOnce;
+                        ButtonPressed = FormButtons.ReplaceOnce;    // these both mean replace
                         break;
                     case "Cancel":
                         ButtonPressed = FormButtons.Cancel;

From c4b870fc8cee85e8a6be75de9e8e969f570cb718 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 07:18:13 -0500
Subject: [PATCH 40/71] include the EcTranslators and SpellFixerEc merge
 modules if any of the SILConverters for Office features are being installed
 (since those are necessary for the TranslationHelperForm and the Find-Replace
 features in it

---
 Installer/SEC Setup 64bit/EcFeatures.wxs |  6 ++++++
 Installer/SEC Setup/EcFeatures.wxs       | 10 ++++++++++
 2 files changed, 16 insertions(+)

diff --git a/Installer/SEC Setup 64bit/EcFeatures.wxs b/Installer/SEC Setup 64bit/EcFeatures.wxs
index c7b24889..24764d9f 100644
--- a/Installer/SEC Setup 64bit/EcFeatures.wxs	
+++ b/Installer/SEC Setup 64bit/EcFeatures.wxs	
@@ -68,6 +68,8 @@
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice10"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>
@@ -76,6 +78,8 @@
         <Condition Level="0"><![CDATA[OFFICE_2016_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice13"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>
@@ -84,6 +88,8 @@
         <Condition Level="0"><![CDATA[OFFICE_2013_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice13"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>
diff --git a/Installer/SEC Setup/EcFeatures.wxs b/Installer/SEC Setup/EcFeatures.wxs
index 45d31a3e..92dd66ce 100644
--- a/Installer/SEC Setup/EcFeatures.wxs	
+++ b/Installer/SEC Setup/EcFeatures.wxs	
@@ -72,6 +72,8 @@
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice03"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <!--The KB908002 fix is necessary for Office 2003-->
         <MergeRef Id="MS_KB908002_Fix"/>
         <MergeRef Id="SEC_ICU"/>
@@ -84,6 +86,8 @@
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice07"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
@@ -94,6 +98,8 @@
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice10"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
@@ -103,6 +109,8 @@
         <Condition Level="0"><![CDATA[OFFICE_2016_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice13"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
       </Feature>
       <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/2019/365" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x86 versions of Office 2003, 07, 10, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
@@ -110,6 +118,8 @@
         <Condition Level="0"><![CDATA[OFFICE_2013_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SCOffice13"/>
+        <MergeRef Id="EcTranslators"/>
+        <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>

From af698b038b4629863e010d8ed8115586842ea2ec Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 07:26:36 -0500
Subject: [PATCH 41/71] change nuget for EcCore to 0.5.7

---
 .../IndicConverters/IndicConverters.wixproj                 | 4 ++--
 .../Converter Packages/IndicConverters/packages.config      | 2 +-
 .../IndicConverters64bit/IndicConverters64bit.wixproj       | 4 ++--
 .../Converter Packages/IndicConverters64bit/packages.config | 2 +-
 Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj           | 4 ++--
 Installer/SEC Setup 64bit/packages.config                   | 2 +-
 Installer/SEC Setup/SEC Setup.wixproj                       | 4 ++--
 Installer/SEC Setup/packages.config                         | 2 +-
 Installer/ScHelpMM/ScHelpMM.wixproj                         | 4 ++--
 Installer/ScHelpMM/packages.config                          | 2 +-
 Installer/SetupSILConverters/SetupSILConverters.wixproj     | 4 ++--
 Installer/SetupSILConverters/packages.config                | 2 +-
 Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj | 4 ++--
 Installer/TECkitPackage64bitMM/packages.config              | 2 +-
 Installer/TECkitPackageMM/TECkitPackageMM.wixproj           | 4 ++--
 Installer/TECkitPackageMM/packages.config                   | 2 +-
 src/AdaptIt2Unicode/AdaptIt2Unicode.csproj                  | 4 ++--
 src/AdaptIt2Unicode/packages.config                         | 2 +-
 src/BulkSFMConverter/SFMConv.csproj                         | 4 ++--
 src/BulkSFMConverter/packages.config                        | 2 +-
 src/ClipboardEC/ClipboardEC.csproj                          | 4 ++--
 src/ClipboardEC/packages.config                             | 2 +-
 src/DChartHelper/DChartHelper.csproj                        | 4 ++--
 src/DChartHelper/packages.config                            | 2 +-
 .../ParatextPluginBackTranslationHelper.csproj              | 4 ++--
 src/ParatextPluginBackTranslationHelper/packages.config     | 2 +-
 src/SILConvertersInstaller/SILConvertersInstaller.vbproj    | 4 ++--
 src/SILConvertersInstaller/packages.config                  | 2 +-
 src/SILConvertersOffice/SILConvertersOffice.csproj          | 6 ++++--
 src/SILConvertersOffice/packages.config                     | 2 +-
 src/SILConvertersOffice07/SILConvertersOffice07.csproj      | 6 ++++--
 src/SILConvertersOffice07/packages.config                   | 2 +-
 src/SILConvertersOffice10/SILConvertersOffice10.csproj      | 6 ++++--
 src/SILConvertersOffice10/packages.config                   | 2 +-
 src/SILConvertersOffice13/SILConvertersOffice13.csproj      | 6 ++++--
 src/SILConvertersOffice13/packages.config                   | 2 +-
 src/SILConvertersWordML/SILConvertersWordML.csproj          | 4 ++--
 src/SILConvertersWordML/TestBwdc/TestBwdc.csproj            | 4 ++--
 src/SILConvertersWordML/TestBwdc/packages.config            | 2 +-
 src/SILConvertersWordML/packages.config                     | 2 +-
 src/SilConvertersXML/SilConvertersXML.csproj                | 4 ++--
 src/SilConvertersXML/packages.config                        | 2 +-
 src/SpellingFixerEC/SpellingFixerEC.csproj                  | 4 ++--
 src/SpellingFixerEC/packages.config                         | 2 +-
 src/TECkit Mapping Editor/TECkit Mapping Editor.csproj      | 4 ++--
 src/TECkit Mapping Editor/packages.config                   | 2 +-
 46 files changed, 77 insertions(+), 69 deletions(-)

diff --git a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj
index 8cfea677..5692fbde 100644
--- a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
+++ b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -82,7 +82,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters/packages.config b/Installer/Converter Packages/IndicConverters/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/Converter Packages/IndicConverters/packages.config	
+++ b/Installer/Converter Packages/IndicConverters/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj
index bf3ae6fb..dc581a81 100644
--- a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
+++ b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -40,7 +40,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters64bit/packages.config b/Installer/Converter Packages/IndicConverters64bit/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/Converter Packages/IndicConverters64bit/packages.config	
+++ b/Installer/Converter Packages/IndicConverters64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj
index ef25eacb..3ca01f5a 100644
--- a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
+++ b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -59,7 +59,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup 64bit/packages.config b/Installer/SEC Setup 64bit/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/SEC Setup 64bit/packages.config	
+++ b/Installer/SEC Setup 64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup/SEC Setup.wixproj b/Installer/SEC Setup/SEC Setup.wixproj
index ea694e57..ce3538e6 100644
--- a/Installer/SEC Setup/SEC Setup.wixproj	
+++ b/Installer/SEC Setup/SEC Setup.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -67,7 +67,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup/packages.config b/Installer/SEC Setup/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/SEC Setup/packages.config	
+++ b/Installer/SEC Setup/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/ScHelpMM/ScHelpMM.wixproj b/Installer/ScHelpMM/ScHelpMM.wixproj
index 459cb401..d1d11733 100644
--- a/Installer/ScHelpMM/ScHelpMM.wixproj
+++ b/Installer/ScHelpMM/ScHelpMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -48,7 +48,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/ScHelpMM/packages.config b/Installer/ScHelpMM/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/ScHelpMM/packages.config
+++ b/Installer/ScHelpMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SetupSILConverters/SetupSILConverters.wixproj b/Installer/SetupSILConverters/SetupSILConverters.wixproj
index 34561d22..7a136a1c 100644
--- a/Installer/SetupSILConverters/SetupSILConverters.wixproj
+++ b/Installer/SetupSILConverters/SetupSILConverters.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="$([MSBuild]::GetPathOfFileAbove(directory.build.props))" Condition="Exists('$([MSBuild]::GetPathOfFileAbove(directory.build.props))')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
@@ -66,7 +66,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <Target Name="PostBuildCopy" AfterTargets="Build">
     <PropertyGroup>
diff --git a/Installer/SetupSILConverters/packages.config b/Installer/SetupSILConverters/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/SetupSILConverters/packages.config
+++ b/Installer/SetupSILConverters/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
index 6f4f7f40..3ada66f6 100644
--- a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
+++ b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackage64bitMM/packages.config b/Installer/TECkitPackage64bitMM/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/TECkitPackage64bitMM/packages.config
+++ b/Installer/TECkitPackage64bitMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
index 5d3915c3..797733fa 100644
--- a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
+++ b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackageMM/packages.config b/Installer/TECkitPackageMM/packages.config
index 36562a63..3e34b7da 100644
--- a/Installer/TECkitPackageMM/packages.config
+++ b/Installer/TECkitPackageMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" />
+  <package id="Encoding-Converters-Core" version="0.5.7" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
index f9ba5206..81758c05 100644
--- a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
+++ b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -204,6 +204,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/packages.config b/src/AdaptIt2Unicode/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/AdaptIt2Unicode/packages.config
+++ b/src/AdaptIt2Unicode/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/SFMConv.csproj b/src/BulkSFMConverter/SFMConv.csproj
index cac7c60d..23c4a696 100644
--- a/src/BulkSFMConverter/SFMConv.csproj
+++ b/src/BulkSFMConverter/SFMConv.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -207,6 +207,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/packages.config b/src/BulkSFMConverter/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/BulkSFMConverter/packages.config
+++ b/src/BulkSFMConverter/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ClipboardEC/ClipboardEC.csproj b/src/ClipboardEC/ClipboardEC.csproj
index 7285686b..3379bf5c 100644
--- a/src/ClipboardEC/ClipboardEC.csproj
+++ b/src/ClipboardEC/ClipboardEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -198,6 +198,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ClipboardEC/packages.config b/src/ClipboardEC/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/ClipboardEC/packages.config
+++ b/src/ClipboardEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/DChartHelper/DChartHelper.csproj b/src/DChartHelper/DChartHelper.csproj
index 1359edd0..c5f19a25 100644
--- a/src/DChartHelper/DChartHelper.csproj
+++ b/src/DChartHelper/DChartHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -255,6 +255,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/DChartHelper/packages.config b/src/DChartHelper/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/DChartHelper/packages.config
+++ b/src/DChartHelper/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index 55fd7ca5..aa3d6941 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -227,6 +227,6 @@ ren "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(TargetFileName)" "$(Proje
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/packages.config b/src/ParatextPluginBackTranslationHelper/packages.config
index 76cac799..ce327d3b 100644
--- a/src/ParatextPluginBackTranslationHelper/packages.config
+++ b/src/ParatextPluginBackTranslationHelper/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.23" targetFramework="net48" />
   <package id="ParatextPluginInterfaces" version="2.0.23" targetFramework="net48" />
diff --git a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
index c7572bcd..8ac5e5c5 100644
--- a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
+++ b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -244,6 +244,6 @@ xcopy /s /y "$(EcDistFilesPath)\redist\*.*" "$(SolutionDir)output\$(PlatformName
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersInstaller/packages.config b/src/SILConvertersInstaller/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SILConvertersInstaller/packages.config
+++ b/src/SILConvertersInstaller/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index 9ad61fb7..0f967ce4 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -48,6 +48,7 @@
     <Optimize>true</Optimize>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
@@ -59,6 +60,7 @@
     <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF11</DefineConstants>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
@@ -313,6 +315,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/packages.config b/src/SILConvertersOffice/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SILConvertersOffice/packages.config
+++ b/src/SILConvertersOffice/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/SILConvertersOffice07.csproj b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
index ffda5730..b91e8cfc 100644
--- a/src/SILConvertersOffice07/SILConvertersOffice07.csproj
+++ b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -46,6 +46,7 @@
     <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF12</DefineConstants>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
   </PropertyGroup>
@@ -55,6 +56,7 @@
     <Optimize>true</Optimize>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
   </PropertyGroup>
@@ -347,6 +349,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/packages.config b/src/SILConvertersOffice07/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SILConvertersOffice07/packages.config
+++ b/src/SILConvertersOffice07/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index 366811c3..03da57e5 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -46,6 +46,7 @@
     <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF14</DefineConstants>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
   </PropertyGroup>
@@ -55,6 +56,7 @@
     <Optimize>true</Optimize>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
   </PropertyGroup>
@@ -350,6 +352,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/packages.config b/src/SILConvertersOffice10/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SILConvertersOffice10/packages.config
+++ b/src/SILConvertersOffice10/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index fdcdcaea..4142d32c 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -46,6 +46,7 @@
     <DefineConstants>TRACE;DEBUG;BUILD_FOR_OFF15</DefineConstants>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
   </PropertyGroup>
@@ -55,6 +56,7 @@
     <Optimize>true</Optimize>
     <RegisterForComInterop>false</RegisterForComInterop>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
     <Prefer32Bit>false</Prefer32Bit>
   </PropertyGroup>
@@ -355,6 +357,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/packages.config b/src/SILConvertersOffice13/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SILConvertersOffice13/packages.config
+++ b/src/SILConvertersOffice13/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/SILConvertersWordML.csproj b/src/SILConvertersWordML/SILConvertersWordML.csproj
index ecc12145..de9f81a7 100644
--- a/src/SILConvertersWordML/SILConvertersWordML.csproj
+++ b/src/SILConvertersWordML/SILConvertersWordML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -246,6 +246,6 @@
       <ErrorTextMissingPIA>This project references a Microsoft Office PIA file, which is required to be built against or it won't work for older versions of Word. The missing file needing to be restored is {0}.</ErrorTextMissingPIA>
     </PropertyGroup>
     <Error Condition="!Exists('..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll')" Text="$([System.String]::Format('$(ErrorTextMissingPIA)', 'Microsoft.Office.Interop.Word, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c expected to be in ..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 01f58d56..2646f55e 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" />
   <Import Project="..\..\..\packages\NUnit.3.13.3\build\NUnit.props" Condition="Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" />
   <PropertyGroup>
@@ -456,7 +456,7 @@
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit.3.13.3\build\NUnit.props'))" />
     <Error Condition="!Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
   <ProjectExtensions>
     <VisualStudio>
diff --git a/src/SILConvertersWordML/TestBwdc/packages.config b/src/SILConvertersWordML/TestBwdc/packages.config
index 0a0e99d7..838b39eb 100644
--- a/src/SILConvertersWordML/TestBwdc/packages.config
+++ b/src/SILConvertersWordML/TestBwdc/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
   <package id="Microsoft.CSharp" version="4.7.0" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="NUnit" version="3.13.3" targetFramework="net48" />
diff --git a/src/SILConvertersWordML/packages.config b/src/SILConvertersWordML/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SILConvertersWordML/packages.config
+++ b/src/SILConvertersWordML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SilConvertersXML/SilConvertersXML.csproj b/src/SilConvertersXML/SilConvertersXML.csproj
index d3c3bcae..8703b527 100644
--- a/src/SilConvertersXML/SilConvertersXML.csproj
+++ b/src/SilConvertersXML/SilConvertersXML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -222,6 +222,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SilConvertersXML/packages.config b/src/SilConvertersXML/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SilConvertersXML/packages.config
+++ b/src/SilConvertersXML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index ab16178a..55ded96f 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -249,6 +249,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/packages.config b/src/SpellingFixerEC/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/SpellingFixerEC/packages.config
+++ b/src/SpellingFixerEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj
index abf366ad..f2d82e5a 100644
--- a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
+++ b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -239,6 +239,6 @@ xcopy /y "$(ProjectDir)UnicodeRanges.xml" "$(SolutionDir)output\$(PlatformName)\
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.6\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/packages.config b/src/TECkit Mapping Editor/packages.config
index 07c3c3ac..130a77a4 100644
--- a/src/TECkit Mapping Editor/packages.config	
+++ b/src/TECkit Mapping Editor/packages.config	
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.6" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
 </packages>
\ No newline at end of file

From 5caa26dfd1195cc8c9ef3ee1dd561ccb7dbce8d2 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 15:02:19 -0500
Subject: [PATCH 42/71] save the current window location and size when closing
 the form -- for the Word plug-in

---
 src/SILConvertersOffice/TranslationHelperForm.cs | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index 79d4c940..ddae72ca 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -235,6 +235,11 @@ private void TranslationHelperForm_FormClosing(object sender, FormClosingEventAr
                 (ButtonPressed != FormButtons.Cancel) && 
                 (ButtonPressed != FormButtons.Next))
                 e.Cancel = true;
+        
+            Properties.Settings.Default.DefaultWindowState = WindowState;
+            Properties.Settings.Default.WindowLocation = Location;
+            Properties.Settings.Default.WindowSize = Size;
+            Properties.Settings.Default.Save();
         }
 
         void IBackTranslationHelperDataSource.ButtonPressed(ButtonPressed button)

From b801f1089e93ae72e489dd04d9c6d929644be2e5 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 15:06:09 -0500
Subject: [PATCH 43/71] added a TranslationHelperForm to the Xml Document
 converter (so it could be used, e.g. w/ Transcelerator adaptations.

---
 src/SilConvertersXML/Program.cs               |   2 +-
 .../Properties/Resources.Designer.cs          |   8 +-
 .../Properties/Resources.resx                 |  11 +-
 .../Properties/Settings.Designer.cs           |  38 +++-
 .../Properties/Settings.settings              |   9 +
 src/SilConvertersXML/SilConvertersXML.csproj  |  14 ++
 .../TranslationHelperForm.Designer.cs         |  74 ++++++++
 src/SilConvertersXML/TranslationHelperForm.cs | 165 ++++++++++++++++++
 .../TranslationHelperForm.resx                | 120 +++++++++++++
 src/SilConvertersXML/XMLViewForm.Designer.cs  |  20 ++-
 src/SilConvertersXML/XMLViewForm.cs           |  63 +++++--
 src/SilConvertersXML/app.config               |  77 +++++++-
 12 files changed, 576 insertions(+), 25 deletions(-)
 create mode 100644 src/SilConvertersXML/TranslationHelperForm.Designer.cs
 create mode 100644 src/SilConvertersXML/TranslationHelperForm.cs
 create mode 100644 src/SilConvertersXML/TranslationHelperForm.resx

diff --git a/src/SilConvertersXML/Program.cs b/src/SilConvertersXML/Program.cs
index 992a53e7..5717a581 100644
--- a/src/SilConvertersXML/Program.cs
+++ b/src/SilConvertersXML/Program.cs
@@ -68,7 +68,7 @@ static void Main(string[] args)
                         string strOutputFileSpec = strFileSpecToOpen;
                         if (args.Length > 3)
                             strOutputFileSpec = args[3];
-                        m_aForm.ProcessAndSave(false, strOutputFileSpec);
+                        m_aForm.ProcessAndSave(false, false, strOutputFileSpec);
                         return;
                     }
                 }
diff --git a/src/SilConvertersXML/Properties/Resources.Designer.cs b/src/SilConvertersXML/Properties/Resources.Designer.cs
index e7bc7a5e..826f48ba 100644
--- a/src/SilConvertersXML/Properties/Resources.Designer.cs
+++ b/src/SilConvertersXML/Properties/Resources.Designer.cs
@@ -19,7 +19,7 @@ namespace SilConvertersXML.Properties {
     // class via a tool like ResGen or Visual Studio.
     // To add or remove a member, edit your .ResX file then rerun ResGen
     // with the /str option, or rebuild your VS project.
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
     internal class Resources {
@@ -112,7 +112,11 @@ internal static string flowLayoutPanelConstraintTypeHelp {
         ///If you want to set the font to be used in this list, 
         ///then right-click on the list and the font dialog will 
         ///be displayed for you to choose from.
-        ///    .
+        ///
+        ///If you want to convert the data in this list from a certain value
+        ///(e.g. if the list is large and you didn&apos;t finish it last time), 
+        ///you can select the item you want to start with and when you click 
+        ///the &apos;Convert and Save XML D [rest of string was truncated]&quot;;.
         /// </summary>
         internal static string listBoxViewDataHelp {
             get {
diff --git a/src/SilConvertersXML/Properties/Resources.resx b/src/SilConvertersXML/Properties/Resources.resx
index 315e71fa..f80092bd 100644
--- a/src/SilConvertersXML/Properties/Resources.resx
+++ b/src/SilConvertersXML/Properties/Resources.resx
@@ -112,10 +112,10 @@
     <value>2.0</value>
   </resheader>
   <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <data name="dataGridViewConverterMappingHelp" xml:space="preserve">
     <value>This grid displays the conversion "instructions" that you've created. The 'XPath' column shows the XPath syntax of the requested change(s). 
@@ -216,7 +216,12 @@ to the left. Right-click on an item in the tree to select it.
 If you want to set the font to be used in this list, 
 then right-click on the list and the font dialog will 
 be displayed for you to choose from.
-    </value>
+
+If you want to convert the data in this list from a certain value
+(e.g. if the list is large and you didn't finish it last time), 
+you can select the item you want to start with and when you click 
+the 'Convert and Save XML Document' button, you'll be asked if 
+you want to start the conversation from that item or not.</value>
   </data>
   <data name="treeViewXmlDocHelp" xml:space="preserve">
     <value>This window shows all the unique XML elements/attributes in the XML file (c.f. an XML schema).
diff --git a/src/SilConvertersXML/Properties/Settings.Designer.cs b/src/SilConvertersXML/Properties/Settings.Designer.cs
index 774395e5..77f8f4ac 100644
--- a/src/SilConvertersXML/Properties/Settings.Designer.cs
+++ b/src/SilConvertersXML/Properties/Settings.Designer.cs
@@ -12,7 +12,7 @@ namespace SilConvertersXML.Properties {
     
     
     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.8.1.0")]
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")]
     internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
         
         private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -44,5 +44,41 @@ public static Settings Default {
                 this["RecentFilters"] = value;
             }
         }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("Normal")]
+        public global::System.Windows.Forms.FormWindowState DefaultWindowState {
+            get {
+                return ((global::System.Windows.Forms.FormWindowState)(this["DefaultWindowState"]));
+            }
+            set {
+                this["DefaultWindowState"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
+        public global::System.Drawing.Point WindowLocation {
+            get {
+                return ((global::System.Drawing.Point)(this["WindowLocation"]));
+            }
+            set {
+                this["WindowLocation"] = value;
+            }
+        }
+        
+        [global::System.Configuration.UserScopedSettingAttribute()]
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.Configuration.DefaultSettingValueAttribute("800, 450")]
+        public global::System.Drawing.Size WindowSize {
+            get {
+                return ((global::System.Drawing.Size)(this["WindowSize"]));
+            }
+            set {
+                this["WindowSize"] = value;
+            }
+        }
     }
 }
diff --git a/src/SilConvertersXML/Properties/Settings.settings b/src/SilConvertersXML/Properties/Settings.settings
index 7404a85c..779a79f5 100644
--- a/src/SilConvertersXML/Properties/Settings.settings
+++ b/src/SilConvertersXML/Properties/Settings.settings
@@ -8,5 +8,14 @@
     <Setting Name="RecentFilters" Type="System.Collections.Specialized.StringCollection" Scope="User">
       <Value Profile="(Default)" />
     </Setting>
+    <Setting Name="DefaultWindowState" Type="System.Windows.Forms.FormWindowState" Scope="User">
+      <Value Profile="(Default)">Normal</Value>
+    </Setting>
+    <Setting Name="WindowLocation" Type="System.Drawing.Point" Scope="User">
+      <Value Profile="(Default)">0, 0</Value>
+    </Setting>
+    <Setting Name="WindowSize" Type="System.Drawing.Size" Scope="User">
+      <Value Profile="(Default)">800, 450</Value>
+    </Setting>
   </Settings>
 </SettingsFile>
\ No newline at end of file
diff --git a/src/SilConvertersXML/SilConvertersXML.csproj b/src/SilConvertersXML/SilConvertersXML.csproj
index 8703b527..0cac2e73 100644
--- a/src/SilConvertersXML/SilConvertersXML.csproj
+++ b/src/SilConvertersXML/SilConvertersXML.csproj
@@ -44,6 +44,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <DebugType>full</DebugType>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
     <ErrorReport>prompt</ErrorReport>
@@ -56,6 +57,7 @@
     <Optimize>true</Optimize>
     <DebugType>pdbonly</DebugType>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
     <ErrorReport>prompt</ErrorReport>
@@ -85,6 +87,9 @@
   <ItemGroup>
     <!--nuget doesn't add the references to the csproj files properly; not sure why. Here is what
 			you might want to manually add to the csproj file instead-->
+    <Reference Include="BackTranslationHelper">
+      <HintPath>$(EcDistFilesPath)\win-$(Platform)\native\BackTranslationHelper.dll</HintPath>
+    </Reference>
     <Reference Include="ECInterfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=f1447bae1e63f485, processorArchitecture=x86" Condition="('$(Platform)' == 'x86' or '$(Platform)' == 'AnyCPU') and ('$(OS)'=='Windows_NT')">
       <HintPath>$(EcLibFilesPath)\net48\x86\ECInterfaces.dll</HintPath>
     </Reference>
@@ -127,6 +132,12 @@
     <Compile Include="QueryFixedValueForm.Designer.cs">
       <DependentUpon>QueryFixedValueForm.cs</DependentUpon>
     </Compile>
+    <Compile Include="TranslationHelperForm.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="TranslationHelperForm.Designer.cs">
+      <DependentUpon>TranslationHelperForm.cs</DependentUpon>
+    </Compile>
     <Compile Include="XMLViewForm.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -152,6 +163,9 @@
       <SubType>Designer</SubType>
       <DependentUpon>QueryFixedValueForm.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="TranslationHelperForm.resx">
+      <DependentUpon>TranslationHelperForm.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="XMLViewForm.resx">
       <SubType>Designer</SubType>
       <DependentUpon>XMLViewForm.cs</DependentUpon>
diff --git a/src/SilConvertersXML/TranslationHelperForm.Designer.cs b/src/SilConvertersXML/TranslationHelperForm.Designer.cs
new file mode 100644
index 00000000..71e71144
--- /dev/null
+++ b/src/SilConvertersXML/TranslationHelperForm.Designer.cs
@@ -0,0 +1,74 @@
+using System;
+using System.Windows.Forms;
+
+namespace SilConvertersXML
+{
+    partial class TranslationHelperForm
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.backTranslationHelperCtrl = new BackTranslationHelper.BackTranslationHelperCtrl();
+            this.SuspendLayout();
+            // 
+            // backTranslationHelperCtrl
+            // 
+            this.backTranslationHelperCtrl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+            | System.Windows.Forms.AnchorStyles.Left)
+            | System.Windows.Forms.AnchorStyles.Right)));
+            // if you edit the form (e.g. to add a control), then the designer auto coding will change this "AutoSize = false"
+            //  to (possibly true) and add an 'AutoSizeMode = GrowAndShrink'... but this will cause the embedded control to
+            //  stop showing properly. It *must* be AutoSize = false. (keep this comment here too, so the next person sees it too)
+            // (I'm not sure if it's specifically necessary, but you might need to restore the PerformLayout at the bottom,
+            //  which the editing of the form will remove too)
+            this.backTranslationHelperCtrl.AutoSize = false;
+            this.backTranslationHelperCtrl.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.backTranslationHelperCtrl.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.backTranslationHelperCtrl.Location = new System.Drawing.Point(0, 0);
+            this.backTranslationHelperCtrl.Name = "backTranslationHelperCtrl";
+            this.backTranslationHelperCtrl.Size = new System.Drawing.Size(800, 450);
+            this.backTranslationHelperCtrl.TabIndex = 0;
+            // 
+            // TranslationHelperForm
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(800, 450);
+            this.Controls.Add(this.backTranslationHelperCtrl);
+            this.Name = "TranslationHelperForm";
+            this.Text = "TranslationHelperForm";
+            this.Load += new System.EventHandler(this.TranslationHelperForm_Load);
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.TranslationHelperForm_FormClosing);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private BackTranslationHelper.BackTranslationHelperCtrl backTranslationHelperCtrl;
+    }
+}
\ No newline at end of file
diff --git a/src/SilConvertersXML/TranslationHelperForm.cs b/src/SilConvertersXML/TranslationHelperForm.cs
new file mode 100644
index 00000000..92a150a6
--- /dev/null
+++ b/src/SilConvertersXML/TranslationHelperForm.cs
@@ -0,0 +1,165 @@
+using BackTranslationHelper;
+using ECInterfaces;
+using SilConvertersXML.Properties;
+using SilEncConverters40;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace SilConvertersXML
+{
+    public partial class TranslationHelperForm : Form, IBackTranslationHelperDataSource
+    {
+        protected BackTranslationHelperModel _model;
+        protected Action<BackTranslationHelperModel> _updateDataProc;
+        protected Font _font = null;
+        protected DirectableEncConverter _theEc = null;
+
+        public TranslationHelperForm()
+        {
+            InitializeComponent();
+        }
+
+        private string _translatedOutput = null;
+        public string TranslatedOutput
+        {
+            get
+            {
+                return _translatedOutput ?? backTranslationHelperCtrl.GetNewTargetTexts().FirstOrDefault().TargetData;
+            }
+
+            private set
+            {
+                _translatedOutput = value;
+            }
+        }
+
+        public DialogResult Show(DirectableEncConverter theEc, Font font, string sourceString)
+        {
+            var cursor = Cursor;
+            try
+            {
+                Cursor = Cursors.WaitCursor;
+                _font = font;
+                _theEc = theEc;
+                _model = new BackTranslationHelperModel
+                {
+                    SourceData = sourceString,
+                    TargetData = null,
+                    TargetDataPreExisting = null,  // we don't have an original version of the target (unless someday we allow side-by-side processing of 2 word docs)
+
+                    // the control we're sending this to may have other EncConverters associated w/ this font, but we only have the one. So add it
+                    //  here and when it gets initialized below, it may add other conversions done at that time
+                    TargetsPossible = new List<TargetPossible>(),
+                };
+
+                // this form is the implementation of the way to get data
+                backTranslationHelperCtrl.BackTranslationHelperDataSource = this;
+                if (!backTranslationHelperCtrl.TheTranslators.Any(t => t.Name == theEc.GetEncConverter.Name))
+                    backTranslationHelperCtrl.TheTranslators.Add(theEc.GetEncConverter);
+
+                backTranslationHelperCtrl.Initialize(displayExistingTargetTranslation: false);
+                backTranslationHelperCtrl.GetNewData(ref _model);
+                _updateDataProc(_model);
+
+                // get some info to show in the title bar
+                this.Text = String.Format("{0}: {1}", XMLViewForm.cstrCaption, theEc?.ToString());
+            
+                Cursor = cursor;
+
+                return ShowDialog();
+            }
+            catch (Exception ex)
+            {
+                Cursor = cursor;
+                var error = ex.Message;
+                while (ex.InnerException != null)
+                {
+                    error += Environment.NewLine + Environment.NewLine + ex.InnerException.Message;
+                    ex = ex.InnerException;
+                }
+
+                MessageBox.Show(error, XMLViewForm.cstrCaption);
+            }
+
+            return DialogResult.None;
+        }
+
+        public Font SourceLanguageFont => _font;
+
+        public bool SourceLanguageRightToLeft => false;
+
+        public Font TargetLanguageFont => _font;
+
+        public bool TargetLanguageRightToLeft => false;
+
+        public BackTranslationHelperModel Model => _model;
+
+        public string ProjectName => _theEc.Name;
+
+        public void ActivateKeyboard()
+        {
+            // TODO
+        }
+
+        public void ButtonPressed(ButtonPressed button)
+        {
+            // todo
+        }
+
+        public void Cancel()
+        {
+            DialogResult = DialogResult.Cancel;
+            Close();
+        }
+
+        public void Log(string message)
+        {
+            System.Diagnostics.Debug.WriteLine(message);
+        }
+
+        public void MoveToNext()
+        {
+            DialogResult = DialogResult.OK;
+            Close();
+        }
+
+        public void SetDataUpdateProc(Action<BackTranslationHelperModel> updateControls)
+        {
+            _updateDataProc = updateControls;
+        }
+
+        public bool WriteToTarget(string text)
+        {
+            TranslatedOutput = text;
+            DialogResult = DialogResult.OK;
+            Close();
+            return true;
+        }
+
+        private void TranslationHelperForm_Load(object sender, EventArgs e)
+        {
+            Location = Settings.Default.WindowLocation;
+            WindowState = Settings.Default.DefaultWindowState;
+            if (MinimumSize.Height <= Settings.Default.WindowSize.Height &&
+                MinimumSize.Width <= Settings.Default.WindowSize.Width)
+            {
+                Size = Settings.Default.WindowSize;
+            }
+        }
+
+        private void TranslationHelperForm_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            Properties.Settings.Default.DefaultWindowState = WindowState;
+            Properties.Settings.Default.WindowLocation = Location;
+            Properties.Settings.Default.WindowSize = Size;
+            Properties.Settings.Default.Save();
+        }
+    }
+}
diff --git a/src/SilConvertersXML/TranslationHelperForm.resx b/src/SilConvertersXML/TranslationHelperForm.resx
new file mode 100644
index 00000000..1af7de15
--- /dev/null
+++ b/src/SilConvertersXML/TranslationHelperForm.resx
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>
\ No newline at end of file
diff --git a/src/SilConvertersXML/XMLViewForm.Designer.cs b/src/SilConvertersXML/XMLViewForm.Designer.cs
index 8f645ccc..7a2b0c67 100644
--- a/src/SilConvertersXML/XMLViewForm.Designer.cs
+++ b/src/SilConvertersXML/XMLViewForm.Designer.cs
@@ -67,6 +67,7 @@ private void InitializeComponent()
             this.toolTip = new System.Windows.Forms.ToolTip(this.components);
             this.backgroundWorker = new System.ComponentModel.BackgroundWorker();
             this.fontDialog = new System.Windows.Forms.FontDialog();
+            this.menuUseTranslationDialog = new System.Windows.Forms.ToolStripMenuItem();
             this.menuStrip.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
             this.splitContainer.Panel1.SuspendLayout();
@@ -208,7 +209,8 @@ private void InitializeComponent()
             // advancedToolStripMenuItem
             // 
             this.advancedToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
-            this.enterXPathExpressionToolStripMenuItem});
+            this.enterXPathExpressionToolStripMenuItem,
+            this.menuUseTranslationDialog});
             this.advancedToolStripMenuItem.Name = "advancedToolStripMenuItem";
             this.advancedToolStripMenuItem.Size = new System.Drawing.Size(72, 20);
             this.advancedToolStripMenuItem.Text = "&Advanced";
@@ -217,7 +219,7 @@ private void InitializeComponent()
             // 
             this.enterXPathExpressionToolStripMenuItem.Enabled = false;
             this.enterXPathExpressionToolStripMenuItem.Name = "enterXPathExpressionToolStripMenuItem";
-            this.enterXPathExpressionToolStripMenuItem.Size = new System.Drawing.Size(193, 22);
+            this.enterXPathExpressionToolStripMenuItem.Size = new System.Drawing.Size(194, 22);
             this.enterXPathExpressionToolStripMenuItem.Text = "Enter &XPath Expression";
             this.enterXPathExpressionToolStripMenuItem.Click += new System.EventHandler(this.enterXPathExpressionToolStripMenuItem_Click);
             // 
@@ -296,7 +298,7 @@ private void InitializeComponent()
             this.radioButtonDefaultFont.AutoSize = true;
             this.radioButtonDefaultFont.Location = new System.Drawing.Point(3, 231);
             this.radioButtonDefaultFont.Name = "radioButtonDefaultFont";
-            this.radioButtonDefaultFont.Size = new System.Drawing.Size(121, 20);
+            this.radioButtonDefaultFont.Size = new System.Drawing.Size(120, 20);
             this.radioButtonDefaultFont.TabIndex = 3;
             this.radioButtonDefaultFont.TabStop = true;
             this.radioButtonDefaultFont.Text = "Arial Unicode MS";
@@ -341,7 +343,7 @@ private void InitializeComponent()
             this.buttonProcessAndSave.Location = new System.Drawing.Point(270, 143);
             this.buttonProcessAndSave.Margin = new System.Windows.Forms.Padding(2);
             this.buttonProcessAndSave.Name = "buttonProcessAndSave";
-            this.buttonProcessAndSave.Size = new System.Drawing.Size(204, 26);
+            this.buttonProcessAndSave.Size = new System.Drawing.Size(203, 26);
             this.buttonProcessAndSave.TabIndex = 3;
             this.buttonProcessAndSave.Text = "&Convert and Save XML Document";
             this.buttonProcessAndSave.UseVisualStyleBackColor = true;
@@ -432,6 +434,13 @@ private void InitializeComponent()
             this.backgroundWorker.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.backgroundWorker_ProgressChanged);
             this.backgroundWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.backgroundWorker_RunWorkerCompleted);
             // 
+            // menuUseTranslationDialog
+            // 
+            this.menuUseTranslationDialog.CheckOnClick = true;
+            this.menuUseTranslationDialog.Name = "menuUseTranslationDialog";
+            this.menuUseTranslationDialog.Size = new System.Drawing.Size(194, 22);
+            this.menuUseTranslationDialog.Text = "&UseTranslation Dialog";
+            // 
             // XMLViewForm
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 16F);
@@ -506,6 +515,7 @@ private void InitializeComponent()
         private System.Windows.Forms.ToolStripMenuItem enterXPathExpressionToolStripMenuItem;
         private System.Windows.Forms.TextBox textBoxInput;
         private System.Windows.Forms.TextBox textBoxOutput;
-	}
+        private System.Windows.Forms.ToolStripMenuItem menuUseTranslationDialog;
+    }
 }
 
diff --git a/src/SilConvertersXML/XMLViewForm.cs b/src/SilConvertersXML/XMLViewForm.cs
index 50129943..d9b3cc48 100644
--- a/src/SilConvertersXML/XMLViewForm.cs
+++ b/src/SilConvertersXML/XMLViewForm.cs
@@ -392,16 +392,19 @@ protected void UncheckAllNodes(TreeNodeCollection nodes)
 
         private void processAndSaveDocuments(object sender, EventArgs e)
         {
-            ProcessAndSave(true, null);
+            ProcessAndSave(true, menuUseTranslationDialog.Checked, null);
         }
 
-        public void ProcessAndSave(bool bShowUI, string strOutputFileSpec)
+        private Dictionary<string, TranslationHelperForm> _mapConverterToTranslationForm = new Dictionary<string, TranslationHelperForm>();
+
+        public void ProcessAndSave(bool bShowUI, bool useTranslationForm, string strOutputFileSpec)
         {
             try
             {
                 Cursor = Cursors.WaitCursor;
+                bool queryForStartAfterIndexRecords = true;
                 bool bModified = Program.Modified;
-                int nIndex = 0;
+                int nIndex = 0, numToSkip = 0;
                 while (nIndex < dataGridViewConverterMapping.Rows.Count)
                 {
                     DataGridViewRow aRow = dataGridViewConverterMapping.Rows[nIndex];
@@ -430,8 +433,53 @@ public void ProcessAndSave(bool bShowUI, string strOutputFileSpec)
                     while (xpIterator.MoveNext())
                     {
                         System.Diagnostics.Trace.WriteLine(String.Format("Position: {0} Count: {1}", xpIterator.CurrentPosition, xpIterator.Count));
+
+                        DialogResult res;
+                        // if the user has selected an item in the listBoxViewData, then see if they want to skip to there and pick up
+                        //  (if it's a big file, it might have already a portion of it converted)
+                        if (queryForStartAfterIndexRecords)
+                        {
+                            var index = listBoxViewData.SelectedIndex;
+                            if (index != -1)
+                            {
+                                res = MessageBox.Show($"You selected the item at index, {index} (={listBoxViewData.Items[index]}). Do you want to skip past the earlier items and start the conversion from that item?", cstrCaption, MessageBoxButtons.YesNo);
+                                if (res == DialogResult.Yes)
+                                {
+                                    numToSkip = index;
+                                }
+                            }
+                            queryForStartAfterIndexRecords = false;
+                        }
+
+                        if (numToSkip-- > 0)
+                            continue;
+
                         string strInput = xpIterator.Current.Value;
-                        string strOutput = CallSafeConvert(aEC, strInput);
+                        string strOutput = strInput;
+                        var isTranslatorResource = (((ProcessTypeFlags)aEC.GetEncConverter.ProcessType & ProcessTypeFlags.Translation) == ProcessTypeFlags.Translation);
+                        if (useTranslationForm || isTranslatorResource)
+                        {
+                            if (!_mapConverterToTranslationForm.TryGetValue(aEC.Name, out TranslationHelperForm form))
+                            {
+                                form = new TranslationHelperForm();
+                                _mapConverterToTranslationForm.Add(aEC.Name, form);
+                            }
+
+                            res = form.Show(aEC, listBoxViewData.Font, strInput);
+                            if (res == DialogResult.OK)
+                            {
+                                strOutput = form.TranslatedOutput;
+                            }
+                            else if (res == DialogResult.Cancel)
+                            {
+                                break;
+                            }
+                        }
+                        else
+                        {
+                            strOutput = CallSafeConvert(aEC, strInput);
+                        }
+
                         if (bShowUI)
                         {
                             textBoxInput.Text = strInput;
@@ -681,15 +729,10 @@ private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e)
             {
                 XPathNodeIterator xpIterator = GetIterator((TreeNode)e.Argument, out strXPath);
 
-                List<string> lstUnique = new List<string>();
                 while (xpIterator.MoveNext() && !worker.CancellationPending)
                 {
                     string strValue = xpIterator.Current.Value;
-                    if (!lstUnique.Contains(strValue))
-                    {
-                        lstUnique.Add(strValue);
-                        worker.ReportProgress((lstUnique.Count * 100) / xpIterator.Count, strValue);
-                    }
+                    worker.ReportProgress((xpIterator.Count * 100) / xpIterator.Count, strValue);
                 }
             }
             catch (ApplicationException ex)
diff --git a/src/SilConvertersXML/app.config b/src/SilConvertersXML/app.config
index e17519ad..712b8442 100644
--- a/src/SilConvertersXML/app.config
+++ b/src/SilConvertersXML/app.config
@@ -1,5 +1,76 @@
 <?xml version="1.0"?>
 <configuration>
-    <configSections>
-    </configSections>
-<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/></startup></configuration>
+  <configSections>
+    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+      <section name="SilConvertersXML.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+    </sectionGroup>
+  </configSections>
+  <startup>
+    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
+  </startup>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Extensions.Configuration.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Extensions.Primitives" publicKeyToken="adb9793829ddae60" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Extensions.Http" publicKeyToken="adb9793829ddae60" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Extensions.DependencyInjection.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Text.Json" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Extensions.Http.Polly" publicKeyToken="adb9793829ddae60" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Extensions.DependencyInjection" publicKeyToken="adb9793829ddae60" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+  <userSettings>
+    <SilConvertersXML.Properties.Settings>
+      <setting name="DefaultWindowState" serializeAs="String">
+        <value>Normal</value>
+      </setting>
+      <setting name="WindowLocation" serializeAs="String">
+        <value>0, 0</value>
+      </setting>
+      <setting name="WindowSize" serializeAs="String">
+        <value>800, 450</value>
+      </setting>
+    </SilConvertersXML.Properties.Settings>
+  </userSettings>
+</configuration>

From 1f086c7366a74e0fee0876e54e4ee7f59b07eff9 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 18 Mar 2023 16:01:46 -0500
Subject: [PATCH 44/71] fix the command line option for XML converter so that
 it can still do the entire thing w/o the translation helper dialog (some may
 find it easier to just let Bing/DeepL do the entire file and then clean it up
 afterwards)

---
 src/SilConvertersXML/Program.cs     | 2 +-
 src/SilConvertersXML/XMLViewForm.cs | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/SilConvertersXML/Program.cs b/src/SilConvertersXML/Program.cs
index 5717a581..dfc09e8d 100644
--- a/src/SilConvertersXML/Program.cs
+++ b/src/SilConvertersXML/Program.cs
@@ -80,7 +80,7 @@ static void Main(string[] args)
         public static void PrintUsage()
         {
             Assembly assy = Assembly.GetExecutingAssembly();
-            string strUsage = String.Format("Usage: {1} <xmlfile2open>.xml (/cm <converterMappingFile2Use>.xcm) (<xmlfile2save>.xml){0}{0} where the xml file (i.e. <xmlfile2open>.xml) will be automatically converted if you provide the '/cm' switch and the converter mapping file (i.e. <converterMappingFile2Use>.xcm). If you want to save it with a different name, you can optionally provide the <xmlfile2save>.xml parameter",
+            string strUsage = String.Format("Usage: {1} <xmlfile2open> (/cm <converterMappingFile2Use.xcm>) (<xmlfile2save>){0}{0} where the xml file (i.e. <xmlfile2open>) will be automatically converted if you provide the '/cm' switch and the converter mapping file (i.e. <converterMappingFile2Use.xcm>). If you want to save it with a different name, you can optionally provide the <xmlfile2save> parameter",
                 Environment.NewLine, assy.ManifestModule.Name);
             Console.WriteLine(strUsage);
             MessageBox.Show(strUsage, XMLViewForm.cstrCaption);
diff --git a/src/SilConvertersXML/XMLViewForm.cs b/src/SilConvertersXML/XMLViewForm.cs
index d9b3cc48..82798df2 100644
--- a/src/SilConvertersXML/XMLViewForm.cs
+++ b/src/SilConvertersXML/XMLViewForm.cs
@@ -457,7 +457,7 @@ public void ProcessAndSave(bool bShowUI, bool useTranslationForm, string strOutp
                         string strInput = xpIterator.Current.Value;
                         string strOutput = strInput;
                         var isTranslatorResource = (((ProcessTypeFlags)aEC.GetEncConverter.ProcessType & ProcessTypeFlags.Translation) == ProcessTypeFlags.Translation);
-                        if (useTranslationForm || isTranslatorResource)
+                        if (bShowUI && (useTranslationForm || isTranslatorResource))
                         {
                             if (!_mapConverterToTranslationForm.TryGetValue(aEC.Name, out TranslationHelperForm form))
                             {
@@ -499,7 +499,7 @@ public void ProcessAndSave(bool bShowUI, bool useTranslationForm, string strOutp
                 // reset this so we can do new versions
                 m_mapEncConverters.Clear();
 
-                bool bHaveOutputFilename = false;
+                bool bHaveOutputFilename = !String.IsNullOrEmpty(strOutputFileSpec);
                 do
                 {
                     if (String.IsNullOrEmpty(strOutputFileSpec))

From 431f052cc177df1ad002e8deb29cb8ad9b1d75f6 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Mon, 20 Mar 2023 19:06:51 -0500
Subject: [PATCH 45/71] fixed the logic in the XML converter so that clicking
 'Skip' means it won't convert the entry. Also added the *.config files to the
 merge module for SilConvertersXml.exe so on install, it'll redirect the
 System.Runtime.CompilerServices.Unsafe dll to v7, which is installed

---
 .../XmlConverters_MergeModule.wxs                |  5 +++++
 .../XmlConverters_MergeModule.wxs                |  5 +++++
 src/SilConvertersXML/TranslationHelperForm.cs    | 16 +++++++++++++---
 3 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/Installer/XmlConverters64bitMM/XmlConverters_MergeModule.wxs b/Installer/XmlConverters64bitMM/XmlConverters_MergeModule.wxs
index 796a44b3..5fe94b71 100644
--- a/Installer/XmlConverters64bitMM/XmlConverters_MergeModule.wxs
+++ b/Installer/XmlConverters64bitMM/XmlConverters_MergeModule.wxs
@@ -21,6 +21,11 @@
           <Shortcut Id="SilConvertersXML.exe" Directory="SILConverters" Name="XML Document Converter" Description="Convert your XML documents with SIL Converters" IconIndex="0" Show="normal" Target="[#SilConvertersXML.exe]" WorkingDirectory="MergeRedirectFolder" Advertise="no" />
         </Component>
 
+        <Component Id="SilConvertersXML.exe.config" Guid="{6343D12D-43B0-48F2-BE98-E628D244704C}">
+          <File Id="SilConvertersXML.exe.config" Name="SilConvertersXML.exe.config" Vital="yes" KeyPath="yes"
+                Source="..\..\output\x64\release\SilConvertersXML.exe.config" />
+        </Component>
+
       </Directory>
 
       <Directory Id="StartMenuFolder" SourceName="Start Menu">
diff --git a/Installer/XmlConvertersMM/XmlConverters_MergeModule.wxs b/Installer/XmlConvertersMM/XmlConverters_MergeModule.wxs
index 6b5ea557..84e5b507 100644
--- a/Installer/XmlConvertersMM/XmlConverters_MergeModule.wxs
+++ b/Installer/XmlConvertersMM/XmlConverters_MergeModule.wxs
@@ -20,6 +20,11 @@
           <Shortcut Id="SilConvertersXML.exe" Directory="SILConverters" Name="XML Document Converter" Description="Convert your XML documents with SIL Converters" IconIndex="0" Show="normal" Target="[#SilConvertersXML.exe]" WorkingDirectory="MergeRedirectFolder" Advertise="no" />
         </Component>
 
+        <Component Id="SilConvertersXML.exe.config" Guid="{E3C9221E-D0DA-45B2-99A4-F79A4AE07029}">
+          <File Id="SilConvertersXML.exe.config" Name="SilConvertersXML.exe.config" Vital="yes" KeyPath="yes"
+                Source="..\..\output\x86\release\SilConvertersXML.exe.config" />
+        </Component>
+
       </Directory>
 
       <Directory Id="StartMenuFolder" SourceName="Start Menu">
diff --git a/src/SilConvertersXML/TranslationHelperForm.cs b/src/SilConvertersXML/TranslationHelperForm.cs
index 92a150a6..738c0953 100644
--- a/src/SilConvertersXML/TranslationHelperForm.cs
+++ b/src/SilConvertersXML/TranslationHelperForm.cs
@@ -110,12 +110,23 @@ public void ActivateKeyboard()
 
         public void ButtonPressed(ButtonPressed button)
         {
-            // todo
+            switch (button)
+            {
+                case BackTranslationHelper.ButtonPressed.Skip:
+                    DialogResult = DialogResult.No;
+                    break;
+                case BackTranslationHelper.ButtonPressed.MoveToNext:
+                case BackTranslationHelper.ButtonPressed.WriteToTarget:
+                    DialogResult = DialogResult.OK; 
+                    break;
+                case BackTranslationHelper.ButtonPressed.Cancel:
+                    DialogResult = DialogResult.Cancel;
+                    break;
+            }
         }
 
         public void Cancel()
         {
-            DialogResult = DialogResult.Cancel;
             Close();
         }
 
@@ -126,7 +137,6 @@ public void Log(string message)
 
         public void MoveToNext()
         {
-            DialogResult = DialogResult.OK;
             Close();
         }
 

From f69ffb964c481b5879a15d2960d68a8efa899aa6 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Mon, 20 Mar 2023 19:17:42 -0500
Subject: [PATCH 46/71] removing RegisterForComInterop for Debug x64 build
 hoping to fix the GHA build (though, it isn't really used for anything, since
 we have to sign it using TeamCity)

---
 src/SpellingFixerEC/SpellingFixerEC.csproj | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index 55ded96f..87647005 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -103,7 +103,7 @@
     <LangVersion>latest</LangVersion>
     <ErrorReport>prompt</ErrorReport>
     <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
-    <RegisterForComInterop>true</RegisterForComInterop>
+    <RegisterForComInterop>false</RegisterForComInterop>
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="CcEC">

From ff11f204cfa705137728f3894f138286970349d0 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Tue, 21 Mar 2023 07:53:33 -0500
Subject: [PATCH 47/71] removed some unnecessary (and breaking) "Properties"
 dereferences

---
 src/SILConvertersOffice/FindReplaceForm.cs       | 6 +++---
 src/SILConvertersOffice/TranslationHelperForm.cs | 8 ++++----
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/SILConvertersOffice/FindReplaceForm.cs b/src/SILConvertersOffice/FindReplaceForm.cs
index 70f0ad64..8950edf0 100644
--- a/src/SILConvertersOffice/FindReplaceForm.cs
+++ b/src/SILConvertersOffice/FindReplaceForm.cs
@@ -101,7 +101,7 @@ protected void ProcessButtonEx(FormButtons eFormButton)
             // if there's no processor (e.g. initially, change of Find What or Replace With text)...
             if (m_aWordByWordProcessor == null)
             {
-                AddToComboBox(ecTextBoxFindWhat, comboBoxFindWhat, Properties.Settings.Default.RecentFindWhat);
+                AddToComboBox(ecTextBoxFindWhat, comboBoxFindWhat, Settings.Default.RecentFindWhat);
 
                 // if the user clicked Find/Next, then don't give the Replace With text even if there is some
                 m_aWordByWordProcessor = new FindWordProcessor(ecTextBoxFindWhat.Text, ecTextBoxReplaceWith.Text,
@@ -114,7 +114,7 @@ protected void ProcessButtonEx(FormButtons eFormButton)
             // if we're doing a replacement, then save the 'Replace with' string in our settings file
             if ((eFormButton == FormButtons.ReplaceOnce) || (eFormButton == FormButtons.ReplaceAll))
             {
-                AddToComboBox(ecTextBoxReplaceWith, comboBoxReplaceWith, Properties.Settings.Default.RecentReplaceWith);
+                AddToComboBox(ecTextBoxReplaceWith, comboBoxReplaceWith, Settings.Default.RecentReplaceWith);
 
                 // the user may have done 'Replace' when it was found, but then later clicked said ReplaceAll, 
                 //  so update the value
@@ -325,7 +325,7 @@ private void FindReplaceForm_FormClosing(object sender, FormClosingEventArgs e)
             //  expression).
             FindWordProcessor.m_aECs = null;
             ResetBackgroundWorker();
-            Properties.Settings.Default.Save(); // in case something was changed
+            Settings.Default.Save(); // in case something was changed
             e.Cancel = true;
             Hide();
         }
diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index ddae72ca..a6884a00 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -236,10 +236,10 @@ private void TranslationHelperForm_FormClosing(object sender, FormClosingEventAr
                 (ButtonPressed != FormButtons.Next))
                 e.Cancel = true;
         
-            Properties.Settings.Default.DefaultWindowState = WindowState;
-            Properties.Settings.Default.WindowLocation = Location;
-            Properties.Settings.Default.WindowSize = Size;
-            Properties.Settings.Default.Save();
+            Settings.Default.DefaultWindowState = WindowState;
+            Settings.Default.WindowLocation = Location;
+            Settings.Default.WindowSize = Size;
+            Settings.Default.Save();
         }
 
         void IBackTranslationHelperDataSource.ButtonPressed(ButtonPressed button)

From e9ba2b62ab8309d47e84e6074baf4389015589f3 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Tue, 21 Mar 2023 07:56:14 -0500
Subject: [PATCH 48/71] added another way to get font listing which isn't as
 verbose as 'on entire machine' and also changed it so that if the user
 doesn't have anything selected, then functions default to 'whole document'

---
 .../FontConvertersPicker.cs                   | 26 +++++++++++++++----
 .../SILConvertersOffice.csproj                |  1 +
 .../WordDocumentProcessor.cs                  | 22 +++++++++++++++-
 src/SILConvertersOffice/WordRange.cs          | 15 +++++++++++
 .../SILConvertersOffice07.csproj              |  1 +
 .../SILConvertersOffice10.csproj              |  1 +
 .../SILConvertersOffice13.csproj              |  1 +
 7 files changed, 61 insertions(+), 6 deletions(-)

diff --git a/src/SILConvertersOffice/FontConvertersPicker.cs b/src/SILConvertersOffice/FontConvertersPicker.cs
index 953a0e02..ad06e546 100644
--- a/src/SILConvertersOffice/FontConvertersPicker.cs
+++ b/src/SILConvertersOffice/FontConvertersPicker.cs
@@ -14,6 +14,8 @@
 using System.Collections;
 using System.IO;                                    // FileStream
 using System.Runtime.Serialization;                 // for SerializationException
+using System.Xml.Linq;
+using System.Linq;
 #if BUILD_FOR_OFF11
 using SILConvertersOffice.Properties;
 #elif BUILD_FOR_OFF12
@@ -120,7 +122,7 @@ protected void PopulateGrid()
             ResetBackgroundWorker();    // just in case
 
             dataGridViewFontsConverters.Rows.Clear();
-            
+
             // check the check box state which says whether we do "all fonts" or just those in the document
             if (checkBoxFontsInUse.Checked)
             {
@@ -129,9 +131,11 @@ protected void PopulateGrid()
 
                 // Office 2007 (what I'm calling build 4518) doesn't allow background workers to run while a 
                 //  modal dialog is visible. So do it inline.
-                if (    ((m_doc.GetType() != typeof(PubDocument)) && (m_doc.GetType() != typeof(PubStoryDocument)))
-                    ||  ((PubDocument)m_doc).Document.Application.Version.Substring(0,2) == "11")
+                if (((m_doc.GetType() != typeof(PubDocument)) && (m_doc.GetType() != typeof(PubStoryDocument)))
+                    || ((PubDocument)m_doc).Document.Application.Version.Substring(0, 2) == "11")
+                {
                     backgroundWorker.RunWorkerAsync(m_doc);
+                }
                 else
                 {
                     DoWork(backgroundWorker, m_doc);
@@ -139,8 +143,20 @@ protected void PopulateGrid()
                 }
             }
             else
-                foreach (FontFamily aFontFamily in new InstalledFontCollection().Families)
-                    AddRow(aFontFamily.Name);
+            {
+                if (m_doc is WordDocument wordDoc)
+                {
+                    var xdoc = wordDoc.XDocument;
+                    var fonts = xdoc.Descendants().First(n => n.Name.LocalName == "fonts").Elements().Where(n => n.Name.LocalName == "font");
+                    var fontNames = fonts.Select(f => f.Attributes().First(a => a.Name.LocalName == "name").Value);
+                    fontNames.Distinct().ToList().ForEach(fn => AddRow(fn));
+                }
+                else
+                {
+                    foreach (FontFamily aFontFamily in new InstalledFontCollection().Families)
+                        AddRow(aFontFamily.Name);
+                }
+            }
         }
 
         protected bool IsTargetFontDefined(string strFontNameOutput)
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index 0f967ce4..967d0532 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -148,6 +148,7 @@
       <HintPath>System.XML.dll</HintPath>
       <Name>System.XML</Name>
     </Reference>
+    <Reference Include="System.Xml.Linq" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="AccessApp.cs" />
diff --git a/src/SILConvertersOffice/WordDocumentProcessor.cs b/src/SILConvertersOffice/WordDocumentProcessor.cs
index 43e85f1f..097e8b8d 100644
--- a/src/SILConvertersOffice/WordDocumentProcessor.cs
+++ b/src/SILConvertersOffice/WordDocumentProcessor.cs
@@ -2,7 +2,9 @@
 
 using System;
 using System.Collections.Generic;
+using System.Linq;
 using System.Windows.Forms;             // for DialogResult
+using System.Xml.Linq;
 using Word = Microsoft.Office.Interop.Word;
 /*
 #if !Csc30
@@ -25,6 +27,16 @@ public Word.Document Document
             get { return (Word.Document)m_baseDocument; }
         }
 
+        public XDocument XDocument
+        {
+            get
+            {
+                var xml = Document.Content.XML;
+                var doc = XDocument.Parse(xml);
+                return doc;
+            }
+        }
+
         public override int WordCount
         {
             get { return Document.Words.Count; }
@@ -372,7 +384,15 @@ public override bool ProcessWordByWord(OfficeDocumentProcessor aWordProcessor)
         {
             // if multiple paragraphs...
             int nCharIndex = 0;
-            WordParagraphs aParagraphRanges = new WordParagraphs(Document.Application.Selection);
+            var selection = Document.Application.Selection;
+            WordParagraphs aParagraphRanges = new WordParagraphs(selection);
+            
+            // if nothing was selected, then assume the user means 'whole document'
+            if (!aParagraphRanges.Any())
+            {
+                aParagraphRanges = new WordParagraphs(Document.Paragraphs);
+            }
+
             foreach (Word.Range aRange in aParagraphRanges)
             {
                 WordRange aThisParagraph = new WordRange(aRange);
diff --git a/src/SILConvertersOffice/WordRange.cs b/src/SILConvertersOffice/WordRange.cs
index 13cad297..60600f60 100644
--- a/src/SILConvertersOffice/WordRange.cs
+++ b/src/SILConvertersOffice/WordRange.cs
@@ -3,6 +3,7 @@
 using System.Text;
 using System.Drawing;
 using Word = Microsoft.Office.Interop.Word;
+using Microsoft.Office.Interop.Word;
 
 namespace SILConvertersOffice
 {
@@ -227,5 +228,19 @@ public WordParagraphs(Word.Selection aBasedOnSelection)
                 aRange.End = aBasedOnSelection.End;
             }
         }
+
+        public WordParagraphs(Paragraphs paragraphs)
+        {
+            int nParagraphCount = paragraphs.Count;
+            int i = 1;
+            Word.Range aRange = paragraphs[i].Range.Duplicate;
+            Add(aRange);
+
+            while (i < nParagraphCount)
+            {
+                aRange = paragraphs[++i].Range.Duplicate;
+                Add(aRange);
+            }
+        }
     }
 }
diff --git a/src/SILConvertersOffice07/SILConvertersOffice07.csproj b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
index b91e8cfc..f2df3ef1 100644
--- a/src/SILConvertersOffice07/SILConvertersOffice07.csproj
+++ b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
@@ -141,6 +141,7 @@
       <HintPath>System.XML.dll</HintPath>
       <Name>System.XML</Name>
     </Reference>
+    <Reference Include="System.Xml.Linq" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="..\SILConvertersOffice\AccessApp.cs">
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index 03da57e5..c57d2e1b 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -149,6 +149,7 @@
       <HintPath>System.XML.dll</HintPath>
       <Name>System.XML</Name>
     </Reference>
+    <Reference Include="System.Xml.Linq" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="..\SILConvertersOffice\BaseConverterForm.cs">
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index 4142d32c..73026dc9 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -147,6 +147,7 @@
       <HintPath>System.XML.dll</HintPath>
       <Name>System.XML</Name>
     </Reference>
+    <Reference Include="System.Xml.Linq" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="..\SILConvertersOffice\BaseConverterForm.cs">

From da5daad5aaa5ec187ea45371eb19c645b3af67e3 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 22 Mar 2023 05:20:41 -0500
Subject: [PATCH 49/71] IcuRegex doesn't work for certain regex escape codes
 (e.g. \u200c or \u200d -- the zero-width (non-) joiners), so I'm giving up on
 using it for the regex searching in Word functionality and replacing it with
 .Net's version of regex, which is functioning nicely...

---
 src/SILConvertersOffice/FindReplaceForm.cs | 185 +++------------------
 1 file changed, 23 insertions(+), 162 deletions(-)

diff --git a/src/SILConvertersOffice/FindReplaceForm.cs b/src/SILConvertersOffice/FindReplaceForm.cs
index 8950edf0..8361cff9 100644
--- a/src/SILConvertersOffice/FindReplaceForm.cs
+++ b/src/SILConvertersOffice/FindReplaceForm.cs
@@ -7,6 +7,9 @@
 using ECInterfaces;
 using SilEncConverters40;
 using Word = Microsoft.Office.Interop.Word;
+using System.Text.RegularExpressions;
+using System.Text;
+using System.Security.Policy;
 #if BUILD_FOR_OFF11
 using SILConvertersOffice.Properties;
 #elif BUILD_FOR_OFF12
@@ -30,6 +33,7 @@ internal partial class FindReplaceForm : Form
     {
         const string cstrClose = "&Close";
         const string cstrStop = "&Stop";
+        const string NetRegexHelpUrl = "https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference";
 
         private readonly WordFindReplaceDocument m_doc;
         FindWordProcessor m_aWordByWordProcessor = null;
@@ -320,10 +324,6 @@ private void ContextMenuStripExprBuilder_ItemClicked(object sender, ToolStripIte
 
         private void FindReplaceForm_FormClosing(object sender, FormClosingEventArgs e)
         {
-            // clear out the EncConverters object we created since we're probably done for a while (that 
-            //  is static so we don't have to keep buying it over and over again for simple changes in the 
-            //  expression).
-            FindWordProcessor.m_aECs = null;
             ResetBackgroundWorker();
             Settings.Default.Save(); // in case something was changed
             e.Cancel = true;
@@ -387,9 +387,8 @@ private void ComboBoxReplaceWith_SelectedIndexChanged(object sender, EventArgs e
 
         private void RegularExpressionHelpToolStripMenuItem_Click(object sender, EventArgs e)
         {
-            // launch the ICU help
-            string strCommandLine = Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles) + @"\SIL\Help\ICU Regular Expression Plug-in About box.htm";
-            OfficeApp.LaunchProgram(strCommandLine, null);
+            // launch the .Net Regex help
+            System.Diagnostics.Process.Start(NetRegexHelpUrl);
         }
 
         private void CheckBoxMatchCase_CheckedChanged(object sender, EventArgs e)
@@ -420,25 +419,21 @@ internal class FindWordProcessor : OfficeDocumentProcessor
         protected char[] m_achDelimiter = new char[] { '\u001f' };
         public int NumOfParagraphsToSearch = 1;
         public int NumOfReplacements = 0;
-        static public EncConverters m_aECs = null;
-        protected IEncConverter m_aECRegex = null;
+        protected Regex _netRegex = null;
+        protected string _replaceWith = null;
         protected string[] astrReplaceDoubleEscapeCodes = new string[] { @"\t", @"\r", @"\n", @"\a", @"\b", @"\f" };
         protected string[] astrReplaceEscapeCodes = new string[] { "\t", "\r", "\n", "\a", "\b", "\f" };
 
         public FindWordProcessor(string strFindWhat, string strReplaceWith, bool bMatchCase)
         {
-            m_aECs ??= new EncConverters(true);
+            strReplaceWith = Regex.Unescape(strReplaceWith);
 
-            // for some reason, the text that goes to constructing the 'Find what' part of the CRegexMatcher is 
-            //  expecting doubly-escaped text (e.g. "\\r" for CR), but the text that goes for the 'Replace with'
-            //  (i.e. the CRegex::ReplaceAll) is expecting singly-escaped text. Our text boxes, however, will always
-            //  return these as doubly-escaped. So for the 'Replace with' stuff, we need to turn certain doubly-
-            //  escaped codes into their single-escaped flavors).
-            int nNumEscapeCodes = astrReplaceDoubleEscapeCodes.Length;
-            for (int i = 0; i < nNumEscapeCodes; i++)
-                strReplaceWith = strReplaceWith.Replace(astrReplaceDoubleEscapeCodes[i], astrReplaceEscapeCodes[i]);
+            // use a dummy delimiter in the replaceWith string, so we can find the changed bit
+            //  (hoping the person isn't looking for this delimiter)
+            _replaceWith = String.Format("{0}{1}{0}", m_achDelimiter[0], strReplaceWith);
+
+            _netRegex = new(strFindWhat);
 
-            m_aECRegex = InitSearchFontConverter(strFindWhat, strReplaceWith, bMatchCase);
             AutoReplaceOnNextFind = false;  // we'll take care of this as well
 
             // Normally, we search the text one paragraph at a time for the FindWhat string, but if the user 
@@ -456,48 +451,15 @@ public FindWordProcessor(string strFindWhat, string strReplaceWith, bool bMatchC
             }
         }
 
-        // initialize an EncConverter which will tell us when we've hit a match. Uses ICU RegEx (though, there's
-        //  no reason this couldn't be .Net regex...)
-        protected IEncConverter InitSearchFontConverter(string strFindWhat, string strReplaceWith, bool bMatchCase)
-        {
-            // we're going to use a temporary ICU RegEx EncConverter to do our 'searching' for us. 
-            // get a blank ICU Regex converter that we can program with our FindWhat string
-            // but, it may be null if ICU isn't installed
-            System.Diagnostics.Debug.Assert(m_aECs != null);
-            IEncConverter aIEC;
-            try
-            {
-                aIEC = m_aECs.NewEncConverterByImplementationType(EncConverters.strTypeSILicuRegex);
-            }
-            catch (Exception ex)
-            {
-                throw new ApplicationException("ICU doesn't appear to have been installed. This feature won't work without ICU.", ex);
-            }
-
-            // we search for different things depending on whether it's "Find" (only) vs. "Find & Replace"
-            // delimit the replacement string with something we can detect, which we wouldn't otherwise expect
-            //  to find in user text.
-            string strConverterSpec = String.Format("{0}->{2}{1}{2}{3}", strFindWhat, strReplaceWith,
-                m_achDelimiter[0], (bMatchCase) ? " /i" : null);
-
-            // Give it a friendly name that isn't likely to conflict with anything 'real' the user might name it.
-            string strName = String.Format("{0} FindReplaceConverter", OfficeApp.cstrCaption);
-            ConvType eConvType = ConvType.Unicode_to_Unicode;
-            string strDummy = null;
-            int nProcType = (int)ProcessTypeFlags.ICURegularExpression;
-
-            // initialize it so it's ready and put it in the current repository object (as a temporary converter)
-            aIEC.Initialize(strName, strConverterSpec, ref strDummy, ref strDummy, ref eConvType,
-                ref nProcType, 0, 0, true);
-
-            return aIEC;
-        }
-
         public void ReplaceText(WordRange aRunRange, string strNewText)
         {
             try
             {
+                // if you don't explicitly set the font after replacing the text, Word drops it 
+                //  in with some other default font...
+                var font = aRunRange.FontName;
                 aRunRange.Text = strNewText;
+                aRunRange.FontName = font;
             }
             catch (Exception ex)
             {
@@ -545,7 +507,7 @@ protected string[] GetFirstReplacementSplitArray(ref string strInput, ref string
                         nTempInputLength = Math.Min(nTempInputLength + nDiffLength, nInputLength);
 
                     strTempInput = strInput.Substring(0, nTempInputLength);
-                    strOutput = m_aECRegex.Convert(strTempInput);
+                    strOutput = _netRegex.Replace(strTempInput, _replaceWith);
                     astrSegments = strOutput.Split(m_achDelimiter);
                     System.Diagnostics.Trace.WriteLine(String.Format("{0}: diff:{1} segments:{2}", nTempInputLength, nDiffLength, astrSegments.Length));
                 } while (astrSegments.Length != 3);
@@ -562,16 +524,16 @@ public FindResult FindReplaceCompare(WordRange aRunRange, ref int SearchAreaStar
         {
             FindResult res = FindResult.eNothingFound;
             string strInput = aRunRange.Text;
-            if (String.IsNullOrEmpty(strInput) || (m_aECRegex == null))
+
+            if (String.IsNullOrEmpty(strInput) || (_netRegex == null))
                 return res;
 
-            // otherwise 'convert' it to see if the 'Find what' string is in it
-            string strOutput = m_aECRegex.Convert(strInput);
+            // otherwise do the replacement to see if the 'Find what' string is in it
+            string strOutput = _netRegex.Replace(strInput, _replaceWith);
 
             // if the input string is different from the output string, then the FindWhat string was found.
             if (strInput != strOutput)
             {
-#if !DefineToNotUseSplitAndConvert
                 // The way the convert works is that it will replace each instance of the input string that matches
                 //  the FindWhat syntax (i.e. there may be more than one replacement we have to deal with).
                 // here's the problem: if there was more than one replacment, then I really can't tell what portion
@@ -608,107 +570,6 @@ public FindResult FindReplaceCompare(WordRange aRunRange, ref int SearchAreaStar
                     nEndOfFindWhatSelection = strInput.Length;
                 else
                     nEndOfFindWhatSelection = strInput.Length - strStuffFollowingMatch.Length;
-#else
-                // this could probably be done more elegantly with Split rather than what I do in the #else case
-                string[] astrSegments = strOutput.Split(m_achDelimiter);
-
-                // must be odd (before, ||: replace, following :||), where any or all can be null
-                int nTotalSegments = astrSegments.Length;
-                System.Diagnostics.Debug.Assert((nTotalSegments % 2) == 1);
-                
-                // get the index to the first character of the replacement (which is the same as the first character
-                //  of the 'Find what' as well).
-                int nIndex = astrSegments[0].Length;
-
-                // remember this so we pick up here later
-                SearchAreaStart += nIndex;
-                if (nIndex > 0)
-                    aRunRange.Start = SearchAreaStart;
-
-                // the replacement string is easy. It's just whatever's in the 1st element of the Split array.
-                //  but we have to figure out what the 'Find what' text is so that we can select it (so we can replace 
-                //  it). This is not so easy, because it could be anything and not just a string of text like in a normal
-                //  find.
-                string strReplacementString = astrSegments[1];
-
-                // Between the end of the first replacement and the beginning of the next (if multiple replacments)
-                //  is a string which should match something in the original, which we can search for
-                string strStuffFollowingMatch = astrSegments[2];   // may be null
-
-                int nEndOfFindWhatSelection;
-                if (String.IsNullOrEmpty(strStuffFollowingMatch))
-                {
-                    // If the 'Find what' is repeated twice in a row, then the stuff in-between the two instances of 
-                    //  replacement text will be null.
-                    // Detect this by looking at the length of the even number string array elements (2, 4, etc),
-                    //  which are the segments following the replacements. This tells us what we have to divide by
-                    //  to get the proportion for only one find.
-                    int nNumReplacmentsInARow = 1;
-                    int nNextReplacementIndex = 2;
-                    nTotalSegments--;
-                    while ((nNextReplacementIndex < nTotalSegments) && String.IsNullOrEmpty(astrSegments[nNextReplacementIndex]))
-                    {
-                        nNumReplacmentsInARow++;
-                        nNextReplacementIndex += 2;
-                    }
-
-                    if (nNextReplacementIndex < astrSegments.Length)
-                        strStuffFollowingMatch = astrSegments[nNextReplacementIndex];
-
-                    int numerator;
-                    if (String.IsNullOrEmpty(strStuffFollowingMatch))
-                        numerator = strInput.Length;
-                    else
-                        numerator = strInput.IndexOf(strStuffFollowingMatch, nIndex + 1);
-                    nEndOfFindWhatSelection = ((numerator - nIndex) / nNumReplacmentsInARow) + nIndex;
-                }
-                else
-                    nEndOfFindWhatSelection = strInput.IndexOf(strStuffFollowingMatch, nIndex + 1);
-
-                /*
-                int nIndex = strOutput.IndexOf(m_achDelimiter[0]);
-                System.Diagnostics.Debug.Assert(nIndex != -1);
-                SearchAreaStart += nIndex;
-                if (nIndex > 0)
-                    aRunRange.Start = SearchAreaStart;
-
-                int nEndOfReplacement = strOutput.IndexOf(m_achDelimiter[0], nIndex + 1);
-                System.Diagnostics.Debug.Assert(nEndOfReplacement != -1);
-
-                // the replacement string is what's between these two
-                string strReplacementString = strOutput.Substring(nIndex + 1, (nEndOfReplacement - nIndex - 1));
-
-                // now the complicated part. Between the end of the first replacement and the next 
-                //  one is a string which should match something in the original. But if the replacement
-                //  were null, then it could be the very next character...
-                // This also handles the situation where there may be several "found whats"
-                int nNumReplacmentsInARow = 1;
-                int nNextIndex = nEndOfReplacement + 1;
-                while ((nNextIndex < strOutput.Length) && (strOutput[nNextIndex] == m_achDelimiter[0]))
-                {
-                    nNumReplacmentsInARow++;
-                    nEndOfReplacement = strOutput.IndexOf(m_achDelimiter[0], nNextIndex + 1);
-                    nNextIndex = nEndOfReplacement + 1;
-                }
-
-                if (nNextIndex < strOutput.Length)
-                {
-                    nEndOfReplacement = strOutput.IndexOf(m_achDelimiter[0], nNextIndex + 1);
-                    if (nEndOfReplacement == -1)
-                        nEndOfReplacement = strOutput.Length;
-                }
-                else if (nNextIndex == strOutput.Length)
-                    nNextIndex--;
-
-                string strStuffFollowingMatch = strOutput.Substring(nNextIndex, nEndOfReplacement - nNextIndex);
-
-                nEndOfFindWhatSelection = ((strInput.Length - nIndex) / nNumReplacmentsInARow) + nIndex;
-                if (!String.IsNullOrEmpty(strStuffFollowingMatch))
-                {
-                    nEndOfFindWhatSelection = strInput.IndexOf(strStuffFollowingMatch, nIndex + 1) / nNumReplacmentsInARow;
-                }
-                */
-#endif // !UseSplitToFindReplacements
 
                 FoundAreaLength = nEndOfFindWhatSelection - nIndex;
                 aRunRange.End = SearchAreaStart + FoundAreaLength;

From 6cd69f433ba4953073e88df6d128b9152dd67aba Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 22 Mar 2023 10:03:46 -0500
Subject: [PATCH 50/71] updated to new nuget 0.5.8

---
 .../IndicConverters/IndicConverters.wixproj                   | 4 ++--
 Installer/Converter Packages/IndicConverters/packages.config  | 2 +-
 .../IndicConverters64bit/IndicConverters64bit.wixproj         | 4 ++--
 .../Converter Packages/IndicConverters64bit/packages.config   | 2 +-
 Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj             | 4 ++--
 Installer/SEC Setup 64bit/packages.config                     | 2 +-
 Installer/SEC Setup/SEC Setup.wixproj                         | 4 ++--
 Installer/SEC Setup/packages.config                           | 2 +-
 Installer/ScHelpMM/ScHelpMM.wixproj                           | 4 ++--
 Installer/ScHelpMM/packages.config                            | 2 +-
 Installer/SetupSILConverters/SetupSILConverters.wixproj       | 4 ++--
 Installer/SetupSILConverters/packages.config                  | 2 +-
 Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj   | 4 ++--
 Installer/TECkitPackage64bitMM/packages.config                | 2 +-
 Installer/TECkitPackageMM/TECkitPackageMM.wixproj             | 4 ++--
 Installer/TECkitPackageMM/packages.config                     | 2 +-
 src/AdaptIt2Unicode/AdaptIt2Unicode.csproj                    | 4 ++--
 src/AdaptIt2Unicode/packages.config                           | 2 +-
 src/BulkSFMConverter/SFMConv.csproj                           | 4 ++--
 src/BulkSFMConverter/packages.config                          | 2 +-
 src/ClipboardEC/ClipboardEC.csproj                            | 4 ++--
 src/ClipboardEC/packages.config                               | 2 +-
 src/DChartHelper/DChartHelper.csproj                          | 4 ++--
 src/DChartHelper/packages.config                              | 2 +-
 .../ParatextPluginBackTranslationHelper.csproj                | 4 ++--
 src/ParatextPluginBackTranslationHelper/packages.config       | 2 +-
 src/SILConvertersInstaller/SILConvertersInstaller.vbproj      | 4 ++--
 src/SILConvertersInstaller/packages.config                    | 2 +-
 src/SILConvertersOffice/SILConvertersOffice.csproj            | 4 ++--
 src/SILConvertersOffice/packages.config                       | 2 +-
 src/SILConvertersOffice07/SILConvertersOffice07.csproj        | 4 ++--
 src/SILConvertersOffice07/packages.config                     | 2 +-
 src/SILConvertersOffice10/SILConvertersOffice10.csproj        | 4 ++--
 src/SILConvertersOffice10/packages.config                     | 2 +-
 src/SILConvertersOffice13/SILConvertersOffice13.csproj        | 4 ++--
 src/SILConvertersOffice13/packages.config                     | 2 +-
 src/SILConvertersWordML/SILConvertersWordML.csproj            | 4 ++--
 src/SILConvertersWordML/TestBwdc/TestBwdc.csproj              | 4 ++--
 src/SILConvertersWordML/TestBwdc/packages.config              | 2 +-
 src/SILConvertersWordML/packages.config                       | 2 +-
 src/SilConvertersXML/SilConvertersXML.csproj                  | 4 ++--
 src/SilConvertersXML/packages.config                          | 2 +-
 src/SpellingFixerEC/SpellingFixerEC.csproj                    | 4 ++--
 src/SpellingFixerEC/packages.config                           | 2 +-
 src/TECkit Mapping Editor/TECkit Mapping Editor.csproj        | 4 ++--
 src/TECkit Mapping Editor/packages.config                     | 2 +-
 46 files changed, 69 insertions(+), 69 deletions(-)

diff --git a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj
index 5692fbde..9278640c 100644
--- a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
+++ b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -82,7 +82,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters/packages.config b/Installer/Converter Packages/IndicConverters/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/Converter Packages/IndicConverters/packages.config	
+++ b/Installer/Converter Packages/IndicConverters/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj
index dc581a81..e2770fb5 100644
--- a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
+++ b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -40,7 +40,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters64bit/packages.config b/Installer/Converter Packages/IndicConverters64bit/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/Converter Packages/IndicConverters64bit/packages.config	
+++ b/Installer/Converter Packages/IndicConverters64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj
index 3ca01f5a..8349e226 100644
--- a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
+++ b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -59,7 +59,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup 64bit/packages.config b/Installer/SEC Setup 64bit/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/SEC Setup 64bit/packages.config	
+++ b/Installer/SEC Setup 64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup/SEC Setup.wixproj b/Installer/SEC Setup/SEC Setup.wixproj
index ce3538e6..b10c4089 100644
--- a/Installer/SEC Setup/SEC Setup.wixproj	
+++ b/Installer/SEC Setup/SEC Setup.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -67,7 +67,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup/packages.config b/Installer/SEC Setup/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/SEC Setup/packages.config	
+++ b/Installer/SEC Setup/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/ScHelpMM/ScHelpMM.wixproj b/Installer/ScHelpMM/ScHelpMM.wixproj
index d1d11733..c1796104 100644
--- a/Installer/ScHelpMM/ScHelpMM.wixproj
+++ b/Installer/ScHelpMM/ScHelpMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -48,7 +48,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/ScHelpMM/packages.config b/Installer/ScHelpMM/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/ScHelpMM/packages.config
+++ b/Installer/ScHelpMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SetupSILConverters/SetupSILConverters.wixproj b/Installer/SetupSILConverters/SetupSILConverters.wixproj
index 7a136a1c..2e4a0878 100644
--- a/Installer/SetupSILConverters/SetupSILConverters.wixproj
+++ b/Installer/SetupSILConverters/SetupSILConverters.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="$([MSBuild]::GetPathOfFileAbove(directory.build.props))" Condition="Exists('$([MSBuild]::GetPathOfFileAbove(directory.build.props))')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
@@ -66,7 +66,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <Target Name="PostBuildCopy" AfterTargets="Build">
     <PropertyGroup>
diff --git a/Installer/SetupSILConverters/packages.config b/Installer/SetupSILConverters/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/SetupSILConverters/packages.config
+++ b/Installer/SetupSILConverters/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
index 3ada66f6..c7966501 100644
--- a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
+++ b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackage64bitMM/packages.config b/Installer/TECkitPackage64bitMM/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/TECkitPackage64bitMM/packages.config
+++ b/Installer/TECkitPackage64bitMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
index 797733fa..98b48c6a 100644
--- a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
+++ b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackageMM/packages.config b/Installer/TECkitPackageMM/packages.config
index 3e34b7da..4878bfea 100644
--- a/Installer/TECkitPackageMM/packages.config
+++ b/Installer/TECkitPackageMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" />
+  <package id="Encoding-Converters-Core" version="0.5.8" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
index 81758c05..7700a23a 100644
--- a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
+++ b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -204,6 +204,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/packages.config b/src/AdaptIt2Unicode/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/AdaptIt2Unicode/packages.config
+++ b/src/AdaptIt2Unicode/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/SFMConv.csproj b/src/BulkSFMConverter/SFMConv.csproj
index 23c4a696..39d0bd05 100644
--- a/src/BulkSFMConverter/SFMConv.csproj
+++ b/src/BulkSFMConverter/SFMConv.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -207,6 +207,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/packages.config b/src/BulkSFMConverter/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/BulkSFMConverter/packages.config
+++ b/src/BulkSFMConverter/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ClipboardEC/ClipboardEC.csproj b/src/ClipboardEC/ClipboardEC.csproj
index 3379bf5c..8012ece0 100644
--- a/src/ClipboardEC/ClipboardEC.csproj
+++ b/src/ClipboardEC/ClipboardEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -198,6 +198,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ClipboardEC/packages.config b/src/ClipboardEC/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/ClipboardEC/packages.config
+++ b/src/ClipboardEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/DChartHelper/DChartHelper.csproj b/src/DChartHelper/DChartHelper.csproj
index c5f19a25..313fd641 100644
--- a/src/DChartHelper/DChartHelper.csproj
+++ b/src/DChartHelper/DChartHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -255,6 +255,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/DChartHelper/packages.config b/src/DChartHelper/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/DChartHelper/packages.config
+++ b/src/DChartHelper/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index aa3d6941..b4ba0a7b 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -227,6 +227,6 @@ ren "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(TargetFileName)" "$(Proje
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/packages.config b/src/ParatextPluginBackTranslationHelper/packages.config
index ce327d3b..728fdb16 100644
--- a/src/ParatextPluginBackTranslationHelper/packages.config
+++ b/src/ParatextPluginBackTranslationHelper/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.23" targetFramework="net48" />
   <package id="ParatextPluginInterfaces" version="2.0.23" targetFramework="net48" />
diff --git a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
index 8ac5e5c5..1d3bb648 100644
--- a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
+++ b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -244,6 +244,6 @@ xcopy /s /y "$(EcDistFilesPath)\redist\*.*" "$(SolutionDir)output\$(PlatformName
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersInstaller/packages.config b/src/SILConvertersInstaller/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SILConvertersInstaller/packages.config
+++ b/src/SILConvertersInstaller/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index 967d0532..f8b1b0f7 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -316,6 +316,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/packages.config b/src/SILConvertersOffice/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SILConvertersOffice/packages.config
+++ b/src/SILConvertersOffice/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/SILConvertersOffice07.csproj b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
index f2df3ef1..636d85a3 100644
--- a/src/SILConvertersOffice07/SILConvertersOffice07.csproj
+++ b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -350,6 +350,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/packages.config b/src/SILConvertersOffice07/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SILConvertersOffice07/packages.config
+++ b/src/SILConvertersOffice07/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index c57d2e1b..b187b1c6 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -353,6 +353,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/packages.config b/src/SILConvertersOffice10/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SILConvertersOffice10/packages.config
+++ b/src/SILConvertersOffice10/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index 73026dc9..ddcedbb4 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -358,6 +358,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/packages.config b/src/SILConvertersOffice13/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SILConvertersOffice13/packages.config
+++ b/src/SILConvertersOffice13/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/SILConvertersWordML.csproj b/src/SILConvertersWordML/SILConvertersWordML.csproj
index de9f81a7..c6330e2d 100644
--- a/src/SILConvertersWordML/SILConvertersWordML.csproj
+++ b/src/SILConvertersWordML/SILConvertersWordML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -246,6 +246,6 @@
       <ErrorTextMissingPIA>This project references a Microsoft Office PIA file, which is required to be built against or it won't work for older versions of Word. The missing file needing to be restored is {0}.</ErrorTextMissingPIA>
     </PropertyGroup>
     <Error Condition="!Exists('..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll')" Text="$([System.String]::Format('$(ErrorTextMissingPIA)', 'Microsoft.Office.Interop.Word, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c expected to be in ..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 2646f55e..f3a4ad2e 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" />
   <Import Project="..\..\..\packages\NUnit.3.13.3\build\NUnit.props" Condition="Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" />
   <PropertyGroup>
@@ -456,7 +456,7 @@
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit.3.13.3\build\NUnit.props'))" />
     <Error Condition="!Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
   <ProjectExtensions>
     <VisualStudio>
diff --git a/src/SILConvertersWordML/TestBwdc/packages.config b/src/SILConvertersWordML/TestBwdc/packages.config
index 838b39eb..8b8fd1f9 100644
--- a/src/SILConvertersWordML/TestBwdc/packages.config
+++ b/src/SILConvertersWordML/TestBwdc/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
   <package id="Microsoft.CSharp" version="4.7.0" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="NUnit" version="3.13.3" targetFramework="net48" />
diff --git a/src/SILConvertersWordML/packages.config b/src/SILConvertersWordML/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SILConvertersWordML/packages.config
+++ b/src/SILConvertersWordML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SilConvertersXML/SilConvertersXML.csproj b/src/SilConvertersXML/SilConvertersXML.csproj
index 0cac2e73..bb2a0b2b 100644
--- a/src/SilConvertersXML/SilConvertersXML.csproj
+++ b/src/SilConvertersXML/SilConvertersXML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -236,6 +236,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SilConvertersXML/packages.config b/src/SilConvertersXML/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SilConvertersXML/packages.config
+++ b/src/SilConvertersXML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index 87647005..21fd11c0 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -249,6 +249,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/packages.config b/src/SpellingFixerEC/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/SpellingFixerEC/packages.config
+++ b/src/SpellingFixerEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj
index f2d82e5a..183bc3a6 100644
--- a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
+++ b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -239,6 +239,6 @@ xcopy /y "$(ProjectDir)UnicodeRanges.xml" "$(SolutionDir)output\$(PlatformName)\
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.7\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/packages.config b/src/TECkit Mapping Editor/packages.config
index 130a77a4..c8e9726d 100644
--- a/src/TECkit Mapping Editor/packages.config	
+++ b/src/TECkit Mapping Editor/packages.config	
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.7" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
 </packages>
\ No newline at end of file

From 8aa4f99b7c639c408ecd38207437e71a31ba4a6f Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 25 Mar 2023 07:19:08 -0500
Subject: [PATCH 51/71] adjusted the AddNewProject form in SpellFixer so that
 it resizes properly

---
 .../AddNewProjectForm.Designer.cs             | 56 ++++++++++---------
 src/SpellingFixerEC/AddNewProjectForm.resx    |  3 -
 src/SpellingFixerEC/SpellingFixerEC.csproj    |  1 +
 3 files changed, 30 insertions(+), 30 deletions(-)

diff --git a/src/SpellingFixerEC/AddNewProjectForm.Designer.cs b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
index 78e7e098..49b0f69e 100644
--- a/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
+++ b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
@@ -50,13 +50,13 @@ private void InitializeComponent()
             // 
             // tableLayoutPanel
             // 
-            this.tableLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
-            | System.Windows.Forms.AnchorStyles.Left) 
-            | System.Windows.Forms.AnchorStyles.Right)));
-            this.tableLayoutPanel.ColumnCount = 3;
+            this.tableLayoutPanel.AutoSize = true;
+            this.tableLayoutPanel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
+            this.tableLayoutPanel.ColumnCount = 4;
             this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 120F));
             this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
             this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F));
             this.tableLayoutPanel.Controls.Add(this.labelName, 0, 0);
             this.tableLayoutPanel.Controls.Add(this.textBoxName, 1, 0);
             this.tableLayoutPanel.Controls.Add(this.labelFont, 0, 1);
@@ -69,23 +69,24 @@ private void InitializeComponent()
             this.tableLayoutPanel.Controls.Add(this.textBoxAddlPunctuation, 1, 4);
             this.tableLayoutPanel.Controls.Add(this.buttonCancel, 2, 5);
             this.tableLayoutPanel.Controls.Add(this.buttonOk, 1, 5);
-            this.tableLayoutPanel.Location = new System.Drawing.Point(12, 12);
+            this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.tableLayoutPanel.Location = new System.Drawing.Point(0, 0);
             this.tableLayoutPanel.Name = "tableLayoutPanel";
             this.tableLayoutPanel.RowCount = 6;
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
-            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 20F));
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.tableLayoutPanel.Size = new System.Drawing.Size(439, 291);
+            this.tableLayoutPanel.Size = new System.Drawing.Size(463, 315);
             this.tableLayoutPanel.TabIndex = 15;
             // 
             // labelName
             // 
             this.labelName.Anchor = System.Windows.Forms.AnchorStyles.Right;
             this.labelName.AutoSize = true;
-            this.labelName.Location = new System.Drawing.Point(79, 18);
+            this.labelName.Location = new System.Drawing.Point(79, 22);
             this.labelName.Name = "labelName";
             this.labelName.Size = new System.Drawing.Size(38, 13);
             this.labelName.TabIndex = 16;
@@ -95,9 +96,9 @@ private void InitializeComponent()
             // 
             this.textBoxName.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
             this.tableLayoutPanel.SetColumnSpan(this.textBoxName, 2);
-            this.textBoxName.Location = new System.Drawing.Point(123, 15);
+            this.textBoxName.Location = new System.Drawing.Point(123, 18);
             this.textBoxName.Name = "textBoxName";
-            this.textBoxName.Size = new System.Drawing.Size(313, 20);
+            this.textBoxName.Size = new System.Drawing.Size(317, 20);
             this.textBoxName.TabIndex = 17;
             this.toolTips.SetToolTip(this.textBoxName, "Enter the name of a new projects (e.g. \'Hindi to English fixes\')");
             // 
@@ -105,7 +106,7 @@ private void InitializeComponent()
             // 
             this.labelFont.Anchor = System.Windows.Forms.AnchorStyles.Right;
             this.labelFont.AutoSize = true;
-            this.labelFont.Location = new System.Drawing.Point(86, 68);
+            this.labelFont.Location = new System.Drawing.Point(86, 79);
             this.labelFont.Name = "labelFont";
             this.labelFont.Size = new System.Drawing.Size(31, 13);
             this.labelFont.TabIndex = 16;
@@ -114,7 +115,7 @@ private void InitializeComponent()
             // buttonChooseFont
             // 
             this.buttonChooseFont.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.buttonChooseFont.Location = new System.Drawing.Point(123, 63);
+            this.buttonChooseFont.Location = new System.Drawing.Point(123, 74);
             this.buttonChooseFont.Name = "buttonChooseFont";
             this.buttonChooseFont.Size = new System.Drawing.Size(84, 23);
             this.buttonChooseFont.TabIndex = 18;
@@ -127,9 +128,9 @@ private void InitializeComponent()
             // labelFontChosen
             // 
             this.labelFontChosen.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
-            this.labelFontChosen.Location = new System.Drawing.Point(227, 66);
+            this.labelFontChosen.Location = new System.Drawing.Point(227, 76);
             this.labelFontChosen.Name = "labelFontChosen";
-            this.labelFontChosen.Size = new System.Drawing.Size(209, 18);
+            this.labelFontChosen.Size = new System.Drawing.Size(213, 18);
             this.labelFontChosen.TabIndex = 19;
             // 
             // checkBoxRtL
@@ -137,7 +138,7 @@ private void InitializeComponent()
             this.checkBoxRtL.Anchor = System.Windows.Forms.AnchorStyles.Left;
             this.checkBoxRtL.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
             this.checkBoxRtL.Cursor = System.Windows.Forms.Cursors.Hand;
-            this.checkBoxRtL.Location = new System.Drawing.Point(123, 113);
+            this.checkBoxRtL.Location = new System.Drawing.Point(123, 130);
             this.checkBoxRtL.Name = "checkBoxRtL";
             this.checkBoxRtL.Size = new System.Drawing.Size(98, 24);
             this.checkBoxRtL.TabIndex = 20;
@@ -147,16 +148,16 @@ private void InitializeComponent()
             // labelWordBoundaryDelimiter
             // 
             this.labelWordBoundaryDelimiter.Anchor = System.Windows.Forms.AnchorStyles.Right;
-            this.labelWordBoundaryDelimiter.Location = new System.Drawing.Point(36, 165);
+            this.labelWordBoundaryDelimiter.Location = new System.Drawing.Point(27, 180);
             this.labelWordBoundaryDelimiter.Name = "labelWordBoundaryDelimiter";
-            this.labelWordBoundaryDelimiter.Size = new System.Drawing.Size(81, 19);
+            this.labelWordBoundaryDelimiter.Size = new System.Drawing.Size(90, 38);
             this.labelWordBoundaryDelimiter.TabIndex = 21;
             this.labelWordBoundaryDelimiter.Text = "&Word boundary delimiter:";
             // 
             // textBoxWordBoundaryDelimiter
             // 
             this.textBoxWordBoundaryDelimiter.Anchor = System.Windows.Forms.AnchorStyles.Left;
-            this.textBoxWordBoundaryDelimiter.Location = new System.Drawing.Point(123, 165);
+            this.textBoxWordBoundaryDelimiter.Location = new System.Drawing.Point(123, 189);
             this.textBoxWordBoundaryDelimiter.Name = "textBoxWordBoundaryDelimiter";
             this.textBoxWordBoundaryDelimiter.Size = new System.Drawing.Size(24, 20);
             this.textBoxWordBoundaryDelimiter.TabIndex = 22;
@@ -167,7 +168,7 @@ private void InitializeComponent()
             // 
             this.labelAddlPunct.Anchor = System.Windows.Forms.AnchorStyles.Right;
             this.labelAddlPunct.AutoSize = true;
-            this.labelAddlPunct.Location = new System.Drawing.Point(5, 212);
+            this.labelAddlPunct.Location = new System.Drawing.Point(5, 243);
             this.labelAddlPunct.Name = "labelAddlPunct";
             this.labelAddlPunct.Size = new System.Drawing.Size(112, 26);
             this.labelAddlPunct.TabIndex = 23;
@@ -178,9 +179,9 @@ private void InitializeComponent()
             // 
             this.textBoxAddlPunctuation.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
             this.tableLayoutPanel.SetColumnSpan(this.textBoxAddlPunctuation, 2);
-            this.textBoxAddlPunctuation.Location = new System.Drawing.Point(123, 215);
+            this.textBoxAddlPunctuation.Location = new System.Drawing.Point(123, 246);
             this.textBoxAddlPunctuation.Name = "textBoxAddlPunctuation";
-            this.textBoxAddlPunctuation.Size = new System.Drawing.Size(313, 20);
+            this.textBoxAddlPunctuation.Size = new System.Drawing.Size(317, 20);
             this.textBoxAddlPunctuation.TabIndex = 24;
             this.toolTips.SetToolTip(this.textBoxAddlPunctuation, "Enter any additional punctuation or whitespace characters needed for this languag" +
         "e, separated by spaces (these are used for boundary condition checking)");
@@ -188,7 +189,7 @@ private void InitializeComponent()
             // buttonCancel
             // 
             this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.buttonCancel.Location = new System.Drawing.Point(227, 253);
+            this.buttonCancel.Location = new System.Drawing.Point(227, 288);
             this.buttonCancel.Name = "buttonCancel";
             this.buttonCancel.Size = new System.Drawing.Size(75, 23);
             this.buttonCancel.TabIndex = 25;
@@ -199,7 +200,7 @@ private void InitializeComponent()
             // 
             this.buttonOk.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.buttonOk.DialogResult = System.Windows.Forms.DialogResult.OK;
-            this.buttonOk.Location = new System.Drawing.Point(146, 253);
+            this.buttonOk.Location = new System.Drawing.Point(146, 288);
             this.buttonOk.Name = "buttonOk";
             this.buttonOk.Size = new System.Drawing.Size(75, 23);
             this.buttonOk.TabIndex = 16;
@@ -226,6 +227,7 @@ private void InitializeComponent()
             this.tableLayoutPanel.ResumeLayout(false);
             this.tableLayoutPanel.PerformLayout();
             this.ResumeLayout(false);
+            this.PerformLayout();
 
         }
 
diff --git a/src/SpellingFixerEC/AddNewProjectForm.resx b/src/SpellingFixerEC/AddNewProjectForm.resx
index e26d58e6..82e427ec 100644
--- a/src/SpellingFixerEC/AddNewProjectForm.resx
+++ b/src/SpellingFixerEC/AddNewProjectForm.resx
@@ -120,9 +120,6 @@
   <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>17, 17</value>
   </metadata>
-  <metadata name="toolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>17, 17</value>
-  </metadata>
   <data name="textBoxWordBoundaryDelimiter.ToolTip" xml:space="preserve">
     <value>Enter the character(s) to use as a word boundary delimiter (e.g. with a delimiter of "#", you can enter the "Find What" text like: #car#, which will only match if the search string is "car", but not "cars" or "sportscar")</value>
   </data>
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index 21fd11c0..a4418d76 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -179,6 +179,7 @@
     </Compile>
     <EmbeddedResource Include="AddNewProjectForm.resx">
       <DependentUpon>AddNewProjectForm.cs</DependentUpon>
+      <SubType>Designer</SubType>
     </EmbeddedResource>
     <EmbeddedResource Include="LoginSF.resx">
       <DependentUpon>LoginSF.cs</DependentUpon>

From 578e4ff155825c5f3baf65906e05996f8d43b5d1 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 25 Mar 2023 07:19:33 -0500
Subject: [PATCH 52/71] fixed issue with setting progress bar during background
 working (being on the wrong thread)

---
 src/SILConvertersOffice/FindReplaceForm.cs | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/SILConvertersOffice/FindReplaceForm.cs b/src/SILConvertersOffice/FindReplaceForm.cs
index 8361cff9..3bdb50d7 100644
--- a/src/SILConvertersOffice/FindReplaceForm.cs
+++ b/src/SILConvertersOffice/FindReplaceForm.cs
@@ -183,13 +183,13 @@ private void BackgroundWorker_ProgressChanged(object sender, ProgressChangedEven
         {
             // for us the "progress" is a new range of the document we're searching thru
             int nValue = (int)e.ProgressPercentage;
-            if (nValue > progressBar.Maximum)
-            {
-                progressBar.Maximum = nValue;
-            }
 
             progressBar.BeginInvoke(
                 (MethodInvoker)delegate () {
+                    if (nValue > progressBar.Maximum)
+                    {
+                        progressBar.Maximum = nValue;
+                    }
                     progressBar.Value = nValue;
                 });
         }

From 0a8f8f03180aa03b66af18f01884ecee356b5943 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Thu, 30 Mar 2023 09:01:42 -0500
Subject: [PATCH 53/71] changes (mostly to app.config) for redirecting DLLs for
 the new Google Translate EncConverter

---
 src/ClipboardEC/app.config                    | 16 +++++
 .../app.config                                | 16 +++++
 .../TranslationHelperForm.cs                  |  4 ++
 src/SILConvertersOffice/app.config            | 58 ++++++++++++-------
 src/SILConvertersOffice07/app.config          | 58 ++++++++++++-------
 src/SILConvertersOffice10/app.config          | 58 ++++++++++++-------
 src/SILConvertersOffice13/app.config          | 58 ++++++++++++-------
 src/SILConvertersWordML/app.config            | 16 +++++
 src/SilConvertersXML/app.config               | 16 +++++
 9 files changed, 216 insertions(+), 84 deletions(-)

diff --git a/src/ClipboardEC/app.config b/src/ClipboardEC/app.config
index 4cf6b3d2..8204e7fa 100644
--- a/src/ClipboardEC/app.config
+++ b/src/ClipboardEC/app.config
@@ -53,6 +53,22 @@
         <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
       </dependentAssembly>
+	  <dependentAssembly>
+		  <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+		  <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+	  </dependentAssembly>
+	  <dependentAssembly>
+		  <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+		  <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+	  </dependentAssembly>
+	  <dependentAssembly>
+		  <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+		  <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+	  </dependentAssembly>
+	  <dependentAssembly>
+		  <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+		  <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+	  </dependentAssembly>
     </assemblyBinding>
 	</runtime>
 </configuration>
diff --git a/src/ParatextPluginBackTranslationHelper/app.config b/src/ParatextPluginBackTranslationHelper/app.config
index 16eaa4c6..e8acb2dc 100644
--- a/src/ParatextPluginBackTranslationHelper/app.config
+++ b/src/ParatextPluginBackTranslationHelper/app.config
@@ -59,6 +59,22 @@
         <assemblyIdentity name="PluginInterfaces" publicKeyToken="583bede96b7c94a3" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-2.0.21.0" newVersion="2.0.21.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+      </dependentAssembly>
     </assemblyBinding>
   </runtime>
   <userSettings>
diff --git a/src/SILConvertersOffice/TranslationHelperForm.cs b/src/SILConvertersOffice/TranslationHelperForm.cs
index a6884a00..4d5a7902 100644
--- a/src/SILConvertersOffice/TranslationHelperForm.cs
+++ b/src/SILConvertersOffice/TranslationHelperForm.cs
@@ -117,6 +117,10 @@ public FormButtons Show(FontConverter fontConverter, string sourceText, string t
 
             backTranslationHelperCtrl.Initialize(displayExistingTargetTranslation: false);
 
+            // If Initialize sets the possible target boxes (more than the 1st one) to Visible, 
+            //  for some reason, it's not changing its state... Try this:
+            Application.DoEvents(); 
+
             // TODO: fix this
             backTranslationHelperCtrl.GetNewData(ref _model);
             _updateDataProc(_model);
diff --git a/src/SILConvertersOffice/app.config b/src/SILConvertersOffice/app.config
index 9a8f0d4d..73978e04 100644
--- a/src/SILConvertersOffice/app.config
+++ b/src/SILConvertersOffice/app.config
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<configSections>
-  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
-   <section name="SILConvertersOffice.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
-  </sectionGroup>
- </configSections>
- <runtime>
-		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+  <configSections>
+    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+      <section name="SILConvertersOffice.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+    </sectionGroup>
+  </configSections>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
@@ -55,19 +55,35 @@
         <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+      </dependentAssembly>
     </assemblyBinding>
-	</runtime>
- <userSettings>
-  <SILConvertersOffice.Properties.Settings>
-   <setting name="DefaultWindowState" serializeAs="String">
-    <value>Normal</value>
-   </setting>
-   <setting name="WindowLocation" serializeAs="String">
-    <value>0, 0</value>
-   </setting>
-   <setting name="WindowSize" serializeAs="String">
-    <value>800, 450</value>
-   </setting>
-  </SILConvertersOffice.Properties.Settings>
- </userSettings>
+  </runtime>
+  <userSettings>
+    <SILConvertersOffice.Properties.Settings>
+      <setting name="DefaultWindowState" serializeAs="String">
+        <value>Normal</value>
+      </setting>
+      <setting name="WindowLocation" serializeAs="String">
+        <value>0, 0</value>
+      </setting>
+      <setting name="WindowSize" serializeAs="String">
+        <value>800, 450</value>
+      </setting>
+    </SILConvertersOffice.Properties.Settings>
+  </userSettings>
 </configuration>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/app.config b/src/SILConvertersOffice07/app.config
index 542091f8..4583899b 100644
--- a/src/SILConvertersOffice07/app.config
+++ b/src/SILConvertersOffice07/app.config
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<configSections>
-  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
-   <section name="SILConvertersOffice07.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
-  </sectionGroup>
- </configSections>
- <runtime>
-		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+  <configSections>
+    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+      <section name="SILConvertersOffice07.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+    </sectionGroup>
+  </configSections>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
@@ -55,19 +55,35 @@
         <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+      </dependentAssembly>
     </assemblyBinding>
-	</runtime>
- <userSettings>
-  <SILConvertersOffice07.Properties.Settings>
-   <setting name="DefaultWindowState" serializeAs="String">
-    <value>Normal</value>
-   </setting>
-   <setting name="WindowLocation" serializeAs="String">
-    <value>0, 0</value>
-   </setting>
-   <setting name="WindowSize" serializeAs="String">
-    <value>800, 450</value>
-   </setting>
-  </SILConvertersOffice07.Properties.Settings>
- </userSettings>
+  </runtime>
+  <userSettings>
+    <SILConvertersOffice07.Properties.Settings>
+      <setting name="DefaultWindowState" serializeAs="String">
+        <value>Normal</value>
+      </setting>
+      <setting name="WindowLocation" serializeAs="String">
+        <value>0, 0</value>
+      </setting>
+      <setting name="WindowSize" serializeAs="String">
+        <value>800, 450</value>
+      </setting>
+    </SILConvertersOffice07.Properties.Settings>
+  </userSettings>
 </configuration>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/app.config b/src/SILConvertersOffice10/app.config
index 9275ffb4..7977aa4a 100644
--- a/src/SILConvertersOffice10/app.config
+++ b/src/SILConvertersOffice10/app.config
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<configSections>
-  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
-   <section name="SILConvertersOffice10.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
-  </sectionGroup>
- </configSections>
- <runtime>
-		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+  <configSections>
+    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+      <section name="SILConvertersOffice10.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+    </sectionGroup>
+  </configSections>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
@@ -55,19 +55,35 @@
         <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+      </dependentAssembly>
     </assemblyBinding>
-	</runtime>
- <userSettings>
-  <SILConvertersOffice10.Properties.Settings>
-   <setting name="DefaultWindowState" serializeAs="String">
-    <value>Normal</value>
-   </setting>
-   <setting name="WindowLocation" serializeAs="String">
-    <value>0, 0</value>
-   </setting>
-   <setting name="WindowSize" serializeAs="String">
-    <value>800, 450</value>
-   </setting>
-  </SILConvertersOffice10.Properties.Settings>
- </userSettings>
+  </runtime>
+  <userSettings>
+    <SILConvertersOffice10.Properties.Settings>
+      <setting name="DefaultWindowState" serializeAs="String">
+        <value>Normal</value>
+      </setting>
+      <setting name="WindowLocation" serializeAs="String">
+        <value>0, 0</value>
+      </setting>
+      <setting name="WindowSize" serializeAs="String">
+        <value>800, 450</value>
+      </setting>
+    </SILConvertersOffice10.Properties.Settings>
+  </userSettings>
 </configuration>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/app.config b/src/SILConvertersOffice13/app.config
index 48843d34..e61e9a4a 100644
--- a/src/SILConvertersOffice13/app.config
+++ b/src/SILConvertersOffice13/app.config
@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
 <configuration>
-	<configSections>
-  <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
-   <section name="SILConvertersOffice13.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
-  </sectionGroup>
- </configSections>
- <runtime>
-		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+  <configSections>
+    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
+      <section name="SILConvertersOffice13.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
+    </sectionGroup>
+  </configSections>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
@@ -55,19 +55,35 @@
         <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+      </dependentAssembly>
     </assemblyBinding>
-	</runtime>
- <userSettings>
-  <SILConvertersOffice13.Properties.Settings>
-   <setting name="DefaultWindowState" serializeAs="String">
-    <value>Normal</value>
-   </setting>
-   <setting name="WindowLocation" serializeAs="String">
-    <value>0, 0</value>
-   </setting>
-   <setting name="WindowSize" serializeAs="String">
-    <value>800, 450</value>
-   </setting>
-  </SILConvertersOffice13.Properties.Settings>
- </userSettings>
+  </runtime>
+  <userSettings>
+    <SILConvertersOffice13.Properties.Settings>
+      <setting name="DefaultWindowState" serializeAs="String">
+        <value>Normal</value>
+      </setting>
+      <setting name="WindowLocation" serializeAs="String">
+        <value>0, 0</value>
+      </setting>
+      <setting name="WindowSize" serializeAs="String">
+        <value>800, 450</value>
+      </setting>
+    </SILConvertersOffice13.Properties.Settings>
+  </userSettings>
 </configuration>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/app.config b/src/SILConvertersWordML/app.config
index 77418022..4cb3dd91 100644
--- a/src/SILConvertersWordML/app.config
+++ b/src/SILConvertersWordML/app.config
@@ -65,6 +65,22 @@
         <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+      </dependentAssembly>
     </assemblyBinding>
   </runtime>
 </configuration>
diff --git a/src/SilConvertersXML/app.config b/src/SilConvertersXML/app.config
index 712b8442..3da1b89b 100644
--- a/src/SilConvertersXML/app.config
+++ b/src/SilConvertersXML/app.config
@@ -58,6 +58,22 @@
         <assemblyIdentity name="Microsoft.Extensions.Logging.Abstractions" publicKeyToken="adb9793829ddae60" culture="neutral" />
         <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
       </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Auth" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis.Core" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Apis" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-1.60.0.0" newVersion="1.60.0.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="Google.Api.Gax" publicKeyToken="4b01fa6e34db77ab" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.3.1.0" newVersion="4.3.1.0" />
+      </dependentAssembly>
     </assemblyBinding>
   </runtime>
   <userSettings>

From 32ef31031ac38ea811b84a85fad7a911e9ce9239 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Thu, 30 Mar 2023 09:41:23 -0500
Subject: [PATCH 54/71] updated to new 0.6.0 version of EncConverters core (w/
 google translate plugin)

---
 Directory.Build.props                                     | 4 ++--
 .../IndicConverters/IndicConverters.wixproj               | 4 ++--
 .../Converter Packages/IndicConverters/packages.config    | 2 +-
 .../IndicConverters64bit/IndicConverters64bit.wixproj     | 4 ++--
 .../IndicConverters64bit/packages.config                  | 2 +-
 Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj         | 4 ++--
 Installer/SEC Setup 64bit/packages.config                 | 2 +-
 Installer/SEC Setup/SEC Setup.wixproj                     | 4 ++--
 Installer/SEC Setup/packages.config                       | 2 +-
 Installer/ScHelpMM/ScHelpMM.wixproj                       | 4 ++--
 Installer/ScHelpMM/packages.config                        | 2 +-
 Installer/SetupSILConverters/SetupSILConverters.wixproj   | 8 ++++----
 Installer/SetupSILConverters/packages.config              | 2 +-
 .../TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj     | 4 ++--
 Installer/TECkitPackage64bitMM/packages.config            | 2 +-
 Installer/TECkitPackageMM/TECkitPackageMM.wixproj         | 4 ++--
 Installer/TECkitPackageMM/packages.config                 | 2 +-
 src/AdaptIt2Unicode/AdaptIt2Unicode.csproj                | 4 ++--
 src/AdaptIt2Unicode/packages.config                       | 2 +-
 src/BulkSFMConverter/SFMConv.csproj                       | 4 ++--
 src/BulkSFMConverter/packages.config                      | 2 +-
 src/ClipboardEC/ClipboardEC.csproj                        | 4 ++--
 src/ClipboardEC/packages.config                           | 2 +-
 src/DChartHelper/DChartHelper.csproj                      | 4 ++--
 src/DChartHelper/packages.config                          | 2 +-
 .../ParatextPluginBackTranslationHelper.csproj            | 4 ++--
 src/ParatextPluginBackTranslationHelper/packages.config   | 2 +-
 src/SILConvertersInstaller/SILConvertersInstaller.vbproj  | 4 ++--
 src/SILConvertersInstaller/packages.config                | 2 +-
 src/SILConvertersOffice/SILConvertersOffice.csproj        | 4 ++--
 src/SILConvertersOffice/packages.config                   | 2 +-
 src/SILConvertersOffice07/SILConvertersOffice07.csproj    | 4 ++--
 src/SILConvertersOffice07/packages.config                 | 2 +-
 src/SILConvertersOffice10/SILConvertersOffice10.csproj    | 4 ++--
 src/SILConvertersOffice10/packages.config                 | 2 +-
 src/SILConvertersOffice13/SILConvertersOffice13.csproj    | 4 ++--
 src/SILConvertersOffice13/packages.config                 | 2 +-
 src/SILConvertersWordML/SILConvertersWordML.csproj        | 4 ++--
 src/SILConvertersWordML/TestBwdc/TestBwdc.csproj          | 4 ++--
 src/SILConvertersWordML/TestBwdc/packages.config          | 2 +-
 src/SILConvertersWordML/packages.config                   | 2 +-
 src/SilConvertersXML/SilConvertersXML.csproj              | 4 ++--
 src/SilConvertersXML/packages.config                      | 2 +-
 src/SpellingFixerEC/SpellingFixerEC.csproj                | 4 ++--
 src/SpellingFixerEC/packages.config                       | 2 +-
 src/TECkit Mapping Editor/TECkit Mapping Editor.csproj    | 4 ++--
 src/TECkit Mapping Editor/packages.config                 | 2 +-
 47 files changed, 73 insertions(+), 73 deletions(-)

diff --git a/Directory.Build.props b/Directory.Build.props
index 2a01ff1c..6f36b4e3 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -3,9 +3,9 @@
     <ApplicationName>SILConverters</ApplicationName>
     <SafeApplicationName>SILConverters</SafeApplicationName>
     <TruncatedVersion>5.1</TruncatedVersion>
-    <VersionNumber>5.1.2.0</VersionNumber>
+    <VersionNumber>5.1.3.0</VersionNumber>
     <UpgradeCode>8A50226C-84D0-4CAF-AF8F-B0284643C415</UpgradeCode>
-    <Year>2022</Year>
+    <Year>2023</Year>
     <Manufacturer>SIL International</Manufacturer>
   </PropertyGroup>
 </Project>
\ No newline at end of file
diff --git a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj
index 9278640c..648421ab 100644
--- a/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
+++ b/Installer/Converter Packages/IndicConverters/IndicConverters.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -82,7 +82,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters/packages.config b/Installer/Converter Packages/IndicConverters/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/Converter Packages/IndicConverters/packages.config	
+++ b/Installer/Converter Packages/IndicConverters/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj
index e2770fb5..78ce5be1 100644
--- a/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
+++ b/Installer/Converter Packages/IndicConverters64bit/IndicConverters64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -40,7 +40,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/Converter Packages/IndicConverters64bit/packages.config b/Installer/Converter Packages/IndicConverters64bit/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/Converter Packages/IndicConverters64bit/packages.config	
+++ b/Installer/Converter Packages/IndicConverters64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj
index 8349e226..c1bf8c75 100644
--- a/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
+++ b/Installer/SEC Setup 64bit/SEC Setup 64bit.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -59,7 +59,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup 64bit/packages.config b/Installer/SEC Setup 64bit/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/SEC Setup 64bit/packages.config	
+++ b/Installer/SEC Setup 64bit/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SEC Setup/SEC Setup.wixproj b/Installer/SEC Setup/SEC Setup.wixproj
index b10c4089..1b9a3b56 100644
--- a/Installer/SEC Setup/SEC Setup.wixproj	
+++ b/Installer/SEC Setup/SEC Setup.wixproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
@@ -67,7 +67,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/SEC Setup/packages.config b/Installer/SEC Setup/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/SEC Setup/packages.config	
+++ b/Installer/SEC Setup/packages.config	
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/ScHelpMM/ScHelpMM.wixproj b/Installer/ScHelpMM/ScHelpMM.wixproj
index c1796104..ecf2e1e2 100644
--- a/Installer/ScHelpMM/ScHelpMM.wixproj
+++ b/Installer/ScHelpMM/ScHelpMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -48,7 +48,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/ScHelpMM/packages.config b/Installer/ScHelpMM/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/ScHelpMM/packages.config
+++ b/Installer/ScHelpMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/SetupSILConverters/SetupSILConverters.wixproj b/Installer/SetupSILConverters/SetupSILConverters.wixproj
index 2e4a0878..315a021d 100644
--- a/Installer/SetupSILConverters/SetupSILConverters.wixproj
+++ b/Installer/SetupSILConverters/SetupSILConverters.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="$([MSBuild]::GetPathOfFileAbove(directory.build.props))" Condition="Exists('$([MSBuild]::GetPathOfFileAbove(directory.build.props))')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
@@ -17,10 +17,10 @@
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.2.0;UpgradeCode=8A50226C-84D0-4CAF-AF8F-B0284643C415;Year=2022;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
+    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.3.0;UpgradeCode=8A50226C-84D0-4CAF-AF8F-B0284643C415;Year=2022;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
-    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.2.0;UpgradeCode=0F7D5D72-E9F3-40BB-9748-D388C70096CD;Year=2023;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
+    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.3.0;UpgradeCode=0F7D5D72-E9F3-40BB-9748-D388C70096CD;Year=2023;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
   </PropertyGroup>
@@ -66,7 +66,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <Target Name="PostBuildCopy" AfterTargets="Build">
     <PropertyGroup>
diff --git a/Installer/SetupSILConverters/packages.config b/Installer/SetupSILConverters/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/SetupSILConverters/packages.config
+++ b/Installer/SetupSILConverters/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
index c7966501..576e9e67 100644
--- a/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
+++ b/Installer/TECkitPackage64bitMM/TECkitPackageMM64bit.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackage64bitMM/packages.config b/Installer/TECkitPackage64bitMM/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/TECkitPackage64bitMM/packages.config
+++ b/Installer/TECkitPackage64bitMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
index 98b48c6a..986b8b4c 100644
--- a/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
+++ b/Installer/TECkitPackageMM/TECkitPackageMM.wixproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\packages\WiX.3.11.2\build\wix.props" Condition="Exists('..\..\packages\WiX.3.11.2\build\wix.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -39,7 +39,7 @@
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
     <Error Condition="!Exists('..\..\packages\WiX.3.11.2\build\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WiX.3.11.2\build\wix.props'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <!--
 	To modify your build process, add your task inside one of the targets below and uncomment it.
diff --git a/Installer/TECkitPackageMM/packages.config b/Installer/TECkitPackageMM/packages.config
index 4878bfea..6cf2c2d2 100644
--- a/Installer/TECkitPackageMM/packages.config
+++ b/Installer/TECkitPackageMM/packages.config
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" />
+  <package id="Encoding-Converters-Core" version="0.6.0" />
   <package id="WiX" version="3.11.2" />
 </packages>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
index 7700a23a..10b3b0fd 100644
--- a/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
+++ b/src/AdaptIt2Unicode/AdaptIt2Unicode.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -204,6 +204,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/AdaptIt2Unicode/packages.config b/src/AdaptIt2Unicode/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/AdaptIt2Unicode/packages.config
+++ b/src/AdaptIt2Unicode/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/SFMConv.csproj b/src/BulkSFMConverter/SFMConv.csproj
index 39d0bd05..e9bf75b8 100644
--- a/src/BulkSFMConverter/SFMConv.csproj
+++ b/src/BulkSFMConverter/SFMConv.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -207,6 +207,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/BulkSFMConverter/packages.config b/src/BulkSFMConverter/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/BulkSFMConverter/packages.config
+++ b/src/BulkSFMConverter/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ClipboardEC/ClipboardEC.csproj b/src/ClipboardEC/ClipboardEC.csproj
index 8012ece0..1422be36 100644
--- a/src/ClipboardEC/ClipboardEC.csproj
+++ b/src/ClipboardEC/ClipboardEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -198,6 +198,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ClipboardEC/packages.config b/src/ClipboardEC/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/ClipboardEC/packages.config
+++ b/src/ClipboardEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/DChartHelper/DChartHelper.csproj b/src/DChartHelper/DChartHelper.csproj
index 313fd641..e9474f52 100644
--- a/src/DChartHelper/DChartHelper.csproj
+++ b/src/DChartHelper/DChartHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -255,6 +255,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/DChartHelper/packages.config b/src/DChartHelper/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/DChartHelper/packages.config
+++ b/src/DChartHelper/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
index b4ba0a7b..7138e77b 100644
--- a/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
+++ b/src/ParatextPluginBackTranslationHelper/ParatextPluginBackTranslationHelper.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -227,6 +227,6 @@ ren "%25ParatextInstallDir%25\plugins\$(ProjectName)\$(TargetFileName)" "$(Proje
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/ParatextPluginBackTranslationHelper/packages.config b/src/ParatextPluginBackTranslationHelper/packages.config
index 728fdb16..b05064df 100644
--- a/src/ParatextPluginBackTranslationHelper/packages.config
+++ b/src/ParatextPluginBackTranslationHelper/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="ParatextEmbeddedUiPluginInterfaces" version="2.0.23" targetFramework="net48" />
   <package id="ParatextPluginInterfaces" version="2.0.23" targetFramework="net48" />
diff --git a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
index 1d3bb648..5007b9ed 100644
--- a/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
+++ b/src/SILConvertersInstaller/SILConvertersInstaller.vbproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -244,6 +244,6 @@ xcopy /s /y "$(EcDistFilesPath)\redist\*.*" "$(SolutionDir)output\$(PlatformName
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersInstaller/packages.config b/src/SILConvertersInstaller/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SILConvertersInstaller/packages.config
+++ b/src/SILConvertersInstaller/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/SILConvertersOffice.csproj b/src/SILConvertersOffice/SILConvertersOffice.csproj
index f8b1b0f7..824a24d9 100644
--- a/src/SILConvertersOffice/SILConvertersOffice.csproj
+++ b/src/SILConvertersOffice/SILConvertersOffice.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -316,6 +316,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice/packages.config b/src/SILConvertersOffice/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SILConvertersOffice/packages.config
+++ b/src/SILConvertersOffice/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/SILConvertersOffice07.csproj b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
index 636d85a3..4c719ddb 100644
--- a/src/SILConvertersOffice07/SILConvertersOffice07.csproj
+++ b/src/SILConvertersOffice07/SILConvertersOffice07.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -350,6 +350,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice07/packages.config b/src/SILConvertersOffice07/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SILConvertersOffice07/packages.config
+++ b/src/SILConvertersOffice07/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/SILConvertersOffice10.csproj b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
index b187b1c6..5abf4d89 100644
--- a/src/SILConvertersOffice10/SILConvertersOffice10.csproj
+++ b/src/SILConvertersOffice10/SILConvertersOffice10.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -353,6 +353,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice10/packages.config b/src/SILConvertersOffice10/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SILConvertersOffice10/packages.config
+++ b/src/SILConvertersOffice10/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/SILConvertersOffice13.csproj b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
index ddcedbb4..a881a74a 100644
--- a/src/SILConvertersOffice13/SILConvertersOffice13.csproj
+++ b/src/SILConvertersOffice13/SILConvertersOffice13.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -358,6 +358,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersOffice13/packages.config b/src/SILConvertersOffice13/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SILConvertersOffice13/packages.config
+++ b/src/SILConvertersOffice13/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/SILConvertersWordML.csproj b/src/SILConvertersWordML/SILConvertersWordML.csproj
index c6330e2d..ee7b8b05 100644
--- a/src/SILConvertersWordML/SILConvertersWordML.csproj
+++ b/src/SILConvertersWordML/SILConvertersWordML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -246,6 +246,6 @@
       <ErrorTextMissingPIA>This project references a Microsoft Office PIA file, which is required to be built against or it won't work for older versions of Word. The missing file needing to be restored is {0}.</ErrorTextMissingPIA>
     </PropertyGroup>
     <Error Condition="!Exists('..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll')" Text="$([System.String]::Format('$(ErrorTextMissingPIA)', 'Microsoft.Office.Interop.Word, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c expected to be in ..\SILConvertersOffice\DistFiles\Microsoft.Office.Interop.Word.dll'))" />
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index f3a4ad2e..4ec0c75d 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="16.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <Import Project="..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" />
   <Import Project="..\..\..\packages\NUnit.3.13.3\build\NUnit.props" Condition="Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" />
   <PropertyGroup>
@@ -456,7 +456,7 @@
     </PropertyGroup>
     <Error Condition="!Exists('..\..\..\packages\NUnit.3.13.3\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit.3.13.3\build\NUnit.props'))" />
     <Error Condition="!Exists('..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\NUnit3TestAdapter.4.3.1\build\net35\NUnit3TestAdapter.props'))" />
-    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
   <ProjectExtensions>
     <VisualStudio>
diff --git a/src/SILConvertersWordML/TestBwdc/packages.config b/src/SILConvertersWordML/TestBwdc/packages.config
index 8b8fd1f9..bf328b02 100644
--- a/src/SILConvertersWordML/TestBwdc/packages.config
+++ b/src/SILConvertersWordML/TestBwdc/packages.config
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
   <package id="Microsoft.CSharp" version="4.7.0" targetFramework="net48" />
   <package id="Newtonsoft.Json" version="13.0.2" targetFramework="net48" />
   <package id="NUnit" version="3.13.3" targetFramework="net48" />
diff --git a/src/SILConvertersWordML/packages.config b/src/SILConvertersWordML/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SILConvertersWordML/packages.config
+++ b/src/SILConvertersWordML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SilConvertersXML/SilConvertersXML.csproj b/src/SilConvertersXML/SilConvertersXML.csproj
index bb2a0b2b..1ff00675 100644
--- a/src/SilConvertersXML/SilConvertersXML.csproj
+++ b/src/SilConvertersXML/SilConvertersXML.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -236,6 +236,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SilConvertersXML/packages.config b/src/SilConvertersXML/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SilConvertersXML/packages.config
+++ b/src/SilConvertersXML/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/SpellingFixerEC.csproj b/src/SpellingFixerEC/SpellingFixerEC.csproj
index a4418d76..a58d6bf2 100644
--- a/src/SpellingFixerEC/SpellingFixerEC.csproj
+++ b/src/SpellingFixerEC/SpellingFixerEC.csproj
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
     <ProductVersion>9.0.30729</ProductVersion>
@@ -250,6 +250,6 @@
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/SpellingFixerEC/packages.config b/src/SpellingFixerEC/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/SpellingFixerEC/packages.config
+++ b/src/SpellingFixerEC/packages.config
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj
index 183bc3a6..9f8b1b65 100644
--- a/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
+++ b/src/TECkit Mapping Editor/TECkit Mapping Editor.csproj	
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="16.0">
-  <Import Project="..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" />
+  <Import Project="..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props" Condition="Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" />
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
@@ -239,6 +239,6 @@ xcopy /y "$(ProjectDir)UnicodeRanges.xml" "$(SolutionDir)output\$(PlatformName)\
     <PropertyGroup>
       <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
     </PropertyGroup>
-    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.5.8\build\Encoding-Converters-Core.props'))" />
+    <Error Condition="!Exists('..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Encoding-Converters-Core.0.6.0\build\Encoding-Converters-Core.props'))" />
   </Target>
 </Project>
\ No newline at end of file
diff --git a/src/TECkit Mapping Editor/packages.config b/src/TECkit Mapping Editor/packages.config
index c8e9726d..e0a2de1e 100644
--- a/src/TECkit Mapping Editor/packages.config	
+++ b/src/TECkit Mapping Editor/packages.config	
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="Encoding-Converters-Core" version="0.5.8" targetFramework="net48" />
+  <package id="Encoding-Converters-Core" version="0.6.0" targetFramework="net48" />
 </packages>
\ No newline at end of file

From 2f69b1b22abc317142bad5a30657de968b802e7a Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 11:57:28 -0500
Subject: [PATCH 55/71] fixed https://github.com/silnrsi/silconverters/issues/8
 (labels on Bulk Word Doc converter and several other features)

---
 Installer/SEC Setup 64bit/EcFeatures.wxs |  8 ++++----
 Installer/SEC Setup/EcFeatures.wxs       | 12 ++++++------
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/Installer/SEC Setup 64bit/EcFeatures.wxs b/Installer/SEC Setup 64bit/EcFeatures.wxs
index 24764d9f..9fc73344 100644
--- a/Installer/SEC Setup 64bit/EcFeatures.wxs	
+++ b/Installer/SEC Setup 64bit/EcFeatures.wxs	
@@ -58,12 +58,12 @@
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SetPath"/>
       </Feature>
-      <Feature Id="Bulk_Word_Document_Converter" Title="Bulk Word Document Converter" Description="The Bulk Word document converter allows you to convert one or more Word documents using converters in the system repository. Works with Word 2003, 07, 10, 13, 16, 19, or 365." Display="expand" Level="4" AllowAdvertise="no">
+      <Feature Id="Bulk_Word_Document_Converter" Title="Bulk Word Document Converter" Description="The Bulk Word document converter allows you to convert one or more Word documents using converters in the system repository. Word 2003, 07, 10, 13, 16, 19, or 365" Display="expand" Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[COMPONENTEXISTS_WORD_03_PIA OR COMPONENTEXISTS_WORD_07_PIA OR COMPONENTEXISTS_WORD_10_PIA OR COMPONENTEXISTS_WORD_13_PIA]]></Condition>
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SILConvertersForWord"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x64 versions of Office 2010, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2010_BITNESS = "x64") AND ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <MergeRef Id="SEC_EC"/>
@@ -73,7 +73,7 @@
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x64 versions of Office 2010, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2013_BITNESS = "x64") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2016_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
@@ -83,7 +83,7 @@
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/2019/365" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x64 versions of Office 2010, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/2019/365" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2016_BITNESS = "x64") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2013_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
diff --git a/Installer/SEC Setup/EcFeatures.wxs b/Installer/SEC Setup/EcFeatures.wxs
index 92dd66ce..e8dd69d0 100644
--- a/Installer/SEC Setup/EcFeatures.wxs	
+++ b/Installer/SEC Setup/EcFeatures.wxs	
@@ -61,12 +61,12 @@
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SetPath"/>
       </Feature>
-      <Feature Id="Bulk_Word_Document_Converter" Title="Bulk Word Document Converter" Description="The Bulk Word document converter allows you to convert one or more Word documents using converters in the system repository. Works with Word 2003, 07, 10, 13, 16, 19, or 365." Display="expand" Level="4" AllowAdvertise="no">
+      <Feature Id="Bulk_Word_Document_Converter" Title="Bulk Word Document Converter" Description="Bulk Word document converter allows you to convert one or more Word documents using converters in the system repository. Word 2003, 07, 10, 13, 16, 19, or 365" Display="expand" Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[COMPONENTEXISTS_WORD_03_PIA OR COMPONENTEXISTS_WORD_07_PIA OR COMPONENTEXISTS_WORD_10_PIA OR COMPONENTEXISTS_WORD_13_PIA]]></Condition>
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SILConvertersForWord"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office_2003" Title="SILConverters for Office 2003" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x86 versions of Office 2003, 07, 10, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office_2003" Title="SILConverters for Office 2003" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(COMPONENTEXISTS_WORD_03_PIA) OR (COMPONENTEXISTS_EXCEL_03_PIA) OR (ACCESS_2003_PIA_EXISTS) OR (PUBLISHER_2003_PIA_EXISTS)]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_EXCEL_03_PIA) OR (ACCESS_2003_PIA_EXISTS) OR (PUBLISHER_2003_PIA_EXISTS))]]></Condition>
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
@@ -80,7 +80,7 @@
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
       </Feature>
-      <Feature Id="SILConverters_for_Office07" Title="SILConverters for Office 2007" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x86 versions of Office 2003, 07, 10, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office07" Title="SILConverters for Office 2007" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(COMPONENTEXISTS_WORD_07_PIA) OR (COMPONENTEXISTS_EXCEL_07_PIA) OR (ACCESS_2007_PIA_EXISTS) OR (PUBLISHER_2007_PIA_EXISTS)]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_WORD_07_PIA) OR (COMPONENTEXISTS_EXCEL_07_PIA) OR (ACCESS_2007_PIA_EXISTS) OR (PUBLISHER_2007_PIA_EXISTS))]]></Condition>
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
@@ -92,7 +92,7 @@
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
       </Feature>
-      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x86 versions of Office 2003, 07, 10, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2010_BITNESS = "x86") AND ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
@@ -104,7 +104,7 @@
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
       </Feature>
-      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x86 versions of Office 2003, 07, 10, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2013_BITNESS = "x86") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2016_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
@@ -113,7 +113,7 @@
         <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/2019/365" Description="Provides SILConverter support in Publisher, Excel, and Access (as well as a few developer helps in Word). Works with x86 versions of Office 2003, 07, 10, 13, 16, 19, or 365." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/19/365" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2016_BITNESS = "x86") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2013_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>

From ab535f1ab3a37ba3e7f7cf0fd4a1d6c48dea54d5 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 11:58:31 -0500
Subject: [PATCH 56/71] fixed
 https://github.com/silnrsi/silconverters/pull/13#discussion_r1154875690

---
 .../TestBwdc/UnitTest_PtxBackTrHelper.cs                 | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs b/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
index 7f381dd0..fb4efa0e 100644
--- a/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
+++ b/src/SILConvertersWordML/TestBwdc/UnitTest_PtxBackTrHelper.cs
@@ -22,9 +22,12 @@ public class UnitTest_PtxBackTrHelper
         [TestCase("MultiplePoeticParagraphs", "MultiplePoeticParagraphsMissingInTarget")]
         [TestCase("SimpleParagraphVerse", "SimpleParagraphVerseMissingInTarget")]
         [TestCase("SingleVerse", "SingleVerseMissingInTarget")]
-        /* these are all now failing and I don't think they matter anymore. We aren't now completely 
-         * overwriting the target text with the translated text, rather than merging with what's
-         * in the target presently.
+        /* the test cases below are all now failing, but they don't matter anymore. They were for 
+         * when we were trying to merge the markers from the source with any possible ones existing 
+         * in the target. This was a fool's errand (too many possible differences). 
+         * Now we just completely overwrite the text in the target project with the same markers from
+         * the source project (with the source text replaced by the translated text). So what these 
+         * tests were trying to validate doesn't happen anymore.
         [TestCase("SingleVerse", "SingleVerseMiTSplitIntoTwoParagraphs")]
         [TestCase("SingleVerse", "SingleVerseSplitIntoTwoParagraphs")]
         [TestCase("MultipleParagraphs", "MultipleParagraphsJoinedIntoOneParagraphs")]

From 1b2b142a1872ae9f6af13a5b83716bbdcfd7e84d Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 11:59:46 -0500
Subject: [PATCH 57/71] fixed
 https://github.com/silnrsi/silconverters/pull/13#discussion_r1154879092

---
 src/SilConvertersXML/Properties/Resources.resx | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/SilConvertersXML/Properties/Resources.resx b/src/SilConvertersXML/Properties/Resources.resx
index f80092bd..6c86ebd5 100644
--- a/src/SilConvertersXML/Properties/Resources.resx
+++ b/src/SilConvertersXML/Properties/Resources.resx
@@ -221,7 +221,7 @@ If you want to convert the data in this list from a certain value
 (e.g. if the list is large and you didn't finish it last time), 
 you can select the item you want to start with and when you click 
 the 'Convert and Save XML Document' button, you'll be asked if 
-you want to start the conversation from that item or not.</value>
+you want to continue the conversion from that item or not.</value>
   </data>
   <data name="treeViewXmlDocHelp" xml:space="preserve">
     <value>This window shows all the unique XML elements/attributes in the XML file (c.f. an XML schema).

From 2bf4a77e9bd3f783b21439ead45258c6be26d39f Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 12:06:31 -0500
Subject: [PATCH 58/71] In Spellfixer/AddProject dialog, the validity checks I
 was doing in ButtonOk_Click didn't stop the dialog from closing... moved them
 to AddNewProjectForm_FormClosing, where the closing can be canceled. Also
 added proper tab order. Also, keep the 'Add Project' button all the time; not
 just if there isn't one.

---
 .../AddNewProjectForm.Designer.cs             | 15 +++---
 src/SpellingFixerEC/AddNewProjectForm.cs      | 53 +++++++++++--------
 src/SpellingFixerEC/LoginSF.cs                |  8 +--
 3 files changed, 42 insertions(+), 34 deletions(-)

diff --git a/src/SpellingFixerEC/AddNewProjectForm.Designer.cs b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
index 49b0f69e..d17e8cb9 100644
--- a/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
+++ b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
@@ -99,7 +99,7 @@ private void InitializeComponent()
             this.textBoxName.Location = new System.Drawing.Point(123, 18);
             this.textBoxName.Name = "textBoxName";
             this.textBoxName.Size = new System.Drawing.Size(317, 20);
-            this.textBoxName.TabIndex = 17;
+            this.textBoxName.TabIndex = 0;
             this.toolTips.SetToolTip(this.textBoxName, "Enter the name of a new projects (e.g. \'Hindi to English fixes\')");
             // 
             // labelFont
@@ -118,7 +118,7 @@ private void InitializeComponent()
             this.buttonChooseFont.Location = new System.Drawing.Point(123, 74);
             this.buttonChooseFont.Name = "buttonChooseFont";
             this.buttonChooseFont.Size = new System.Drawing.Size(84, 23);
-            this.buttonChooseFont.TabIndex = 18;
+            this.buttonChooseFont.TabIndex = 2;
             this.buttonChooseFont.Text = "Choose &Font";
             this.toolTips.SetToolTip(this.buttonChooseFont, "Click to choose the font to be used for displaying the Find-Replace pairs (e.g. \'" +
         "Arial Unicode MS, 12 pt\')");
@@ -141,7 +141,7 @@ private void InitializeComponent()
             this.checkBoxRtL.Location = new System.Drawing.Point(123, 130);
             this.checkBoxRtL.Name = "checkBoxRtL";
             this.checkBoxRtL.Size = new System.Drawing.Size(98, 24);
-            this.checkBoxRtL.TabIndex = 20;
+            this.checkBoxRtL.TabIndex = 3;
             this.checkBoxRtL.Text = "&Right-to-Left";
             this.toolTips.SetToolTip(this.checkBoxRtL, "Check this if the data is right-to-left");
             // 
@@ -160,7 +160,7 @@ private void InitializeComponent()
             this.textBoxWordBoundaryDelimiter.Location = new System.Drawing.Point(123, 189);
             this.textBoxWordBoundaryDelimiter.Name = "textBoxWordBoundaryDelimiter";
             this.textBoxWordBoundaryDelimiter.Size = new System.Drawing.Size(24, 20);
-            this.textBoxWordBoundaryDelimiter.TabIndex = 22;
+            this.textBoxWordBoundaryDelimiter.TabIndex = 4;
             this.textBoxWordBoundaryDelimiter.Text = "#";
             this.toolTips.SetToolTip(this.textBoxWordBoundaryDelimiter, resources.GetString("textBoxWordBoundaryDelimiter.ToolTip"));
             // 
@@ -182,7 +182,7 @@ private void InitializeComponent()
             this.textBoxAddlPunctuation.Location = new System.Drawing.Point(123, 246);
             this.textBoxAddlPunctuation.Name = "textBoxAddlPunctuation";
             this.textBoxAddlPunctuation.Size = new System.Drawing.Size(317, 20);
-            this.textBoxAddlPunctuation.TabIndex = 24;
+            this.textBoxAddlPunctuation.TabIndex = 5;
             this.toolTips.SetToolTip(this.textBoxAddlPunctuation, "Enter any additional punctuation or whitespace characters needed for this languag" +
         "e, separated by spaces (these are used for boundary condition checking)");
             // 
@@ -192,7 +192,7 @@ private void InitializeComponent()
             this.buttonCancel.Location = new System.Drawing.Point(227, 288);
             this.buttonCancel.Name = "buttonCancel";
             this.buttonCancel.Size = new System.Drawing.Size(75, 23);
-            this.buttonCancel.TabIndex = 25;
+            this.buttonCancel.TabIndex = 7;
             this.buttonCancel.Text = "&Cancel";
             this.buttonCancel.UseVisualStyleBackColor = true;
             // 
@@ -203,7 +203,7 @@ private void InitializeComponent()
             this.buttonOk.Location = new System.Drawing.Point(146, 288);
             this.buttonOk.Name = "buttonOk";
             this.buttonOk.Size = new System.Drawing.Size(75, 23);
-            this.buttonOk.TabIndex = 16;
+            this.buttonOk.TabIndex = 6;
             this.buttonOk.Text = "OK";
             this.buttonOk.UseVisualStyleBackColor = true;
             this.buttonOk.Click += new System.EventHandler(this.ButtonOk_Click);
@@ -224,6 +224,7 @@ private void InitializeComponent()
             this.Controls.Add(this.tableLayoutPanel);
             this.Name = "AddNewProjectForm";
             this.Text = "Add New Project";
+            this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.AddNewProjectForm_FormClosing);
             this.tableLayoutPanel.ResumeLayout(false);
             this.tableLayoutPanel.PerformLayout();
             this.ResumeLayout(false);
diff --git a/src/SpellingFixerEC/AddNewProjectForm.cs b/src/SpellingFixerEC/AddNewProjectForm.cs
index 51afb257..3b94cc85 100644
--- a/src/SpellingFixerEC/AddNewProjectForm.cs
+++ b/src/SpellingFixerEC/AddNewProjectForm.cs
@@ -72,29 +72,6 @@ private void ButtonChooseFont_Click(object sender, EventArgs e)
 
         private void ButtonOk_Click(object sender, EventArgs e)
         {
-            if (WordBoundaryDelimiter.Contains('"'))
-            {
-                MessageBox.Show("Can't use the double-quote character for the word boundary delimiter", 
-                                SpellingFixerEC.cstrCaption);
-                return;
-            }
-            
-            if (String.IsNullOrEmpty(NewProjectName))
-            {
-                MessageBox.Show("You must define a name for this converter (e.g. 'Hindi fixes')", 
-                                SpellingFixerEC.cstrCaption);
-                return;
-            }
-            
-            if (String.IsNullOrEmpty(labelFontChosen.Text))
-            {
-                if (MessageBox.Show("Did you want to select a font to use when displaying Find-Replace pairs?",
-                                    SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNo)
-                    == DialogResult.Yes)
-                {
-                    return;
-                }
-            }
         }
 
         private string EncodePunctuationForCC(string strPunctuation)
@@ -199,5 +176,35 @@ private string DecodePunctuationForCCEx(string strPunctuation)
 
             return strRet;
         }
+
+        private void AddNewProjectForm_FormClosing(object sender, FormClosingEventArgs e)
+        {
+            if (WordBoundaryDelimiter.Contains('"'))
+            {
+                MessageBox.Show("Can't use the double-quote character for the word boundary delimiter",
+                                SpellingFixerEC.cstrCaption);
+                e.Cancel = true;
+                return;
+            }
+
+            if (String.IsNullOrEmpty(NewProjectName))
+            {
+                MessageBox.Show("You must define a name for this converter (e.g. 'Hindi fixes')",
+                                SpellingFixerEC.cstrCaption);
+                e.Cancel = true;
+                return;
+            }
+
+            if (String.IsNullOrEmpty(labelFontChosen.Text))
+            {
+                if (MessageBox.Show("Did you want to select a font to use when displaying Find-Replace pairs?",
+                                    SpellingFixerEC.cstrCaption, MessageBoxButtons.YesNo)
+                    == DialogResult.Yes)
+                {
+                    e.Cancel = true;
+                    return;
+                }
+            }
+        }
     }
 }
diff --git a/src/SpellingFixerEC/LoginSF.cs b/src/SpellingFixerEC/LoginSF.cs
index 28e63095..bbeac225 100644
--- a/src/SpellingFixerEC/LoginSF.cs
+++ b/src/SpellingFixerEC/LoginSF.cs
@@ -239,10 +239,11 @@ private void MenuItemAddNewProject_Click(object sender, EventArgs e)
 
         private void AddNewProject()
         {
-            var dlg = new AddNewProjectForm(SpellingFixerEC.GetDefaultPunctuation)
+            using var dlg = new AddNewProjectForm(SpellingFixerEC.GetDefaultPunctuation)
             {
                 WordBoundaryDelimiter = SpellingFixerEC.cstrDefaultWordBoundaryDelimiter
             };
+
             var res = dlg.ShowDialog();
             if (res == DialogResult.Cancel)
                 return;
@@ -569,7 +570,7 @@ private void DoEdit(string strProjectName, string strFontName, string sFontSize)
         {
             m_font = new Font(strFontName, GetFloatFontSize(sFontSize));
 
-            var dlg = new AddNewProjectForm(m_strNonWordCharacters)
+            using var dlg = new AddNewProjectForm(m_strNonWordCharacters)
             {
                 NewProjectName = strProjectName,
                 WordBoundaryDelimiter = m_strWordBoundaryDelimiter,
@@ -618,8 +619,7 @@ private void CheckedListBoxProjects_DoubleClick(object sender, EventArgs e)
 
         private void LoginSF_Shown(object sender, EventArgs e)
         {
-            buttonAddNewProject.Visible = !ProjectsExist;
-            if (buttonAddNewProject.Visible)
+            if (!ProjectsExist)
             {
                 AddNewProject();
             }

From 94dfdd83ea8efcaf1a7ba4de3998c85e6acb9d2f Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 12:07:31 -0500
Subject: [PATCH 59/71] added some notes on how to build and upgrade the EcCore
 package

---
 README.md | 36 +++++++++++++++++++++++++++++++++---
 1 file changed, 33 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index 12e27581..08a628f2 100644
--- a/README.md
+++ b/README.md
@@ -1,9 +1,9 @@
 # SIL Converters
-This package provides tools through which you can change the encoding, font, and/or script of text in Microsoft Word and other Office documents, OpenOffice and LibreOffice documents, XML documents, and SFM text and lexicon documents. It also installs a system-wide repository to manage your encoding converters and transliterators (TECkit, CC, ICU, Perl, or Python based, as well as support for adding custom transduction engines).
+This package provides tools through which you can change the encoding, font, and/or script of text in Microsoft Word and other Office documents, OpenOffice and LibreOffice documents, XML documents, and SFM text and lexicon documents. It also installs a system-wide repository to manage your encoding converters and transliterators (TECkit, CC, ICU, Perl, or Python based, as well as support for adding custom transduction engines) and now several web-based translators (Bing Translate, DeepL Translate, and Google Translate).
 
 For developers, it provides a simple COM interface to select and use a converter from the repository. It is easy to use from VBA, C++, C#, Perl, Python or any .NET/COM enabled language.
 
-The core EncConverters assembly is fully integrated with FLEx (FieldWorks Language Explorer), Speech Analyzer, Phonology Assistant, Adapt It and OneStory Editor software. It provides the same system-wide registry of installed and available encoding converters for all of these user programs. Additionally the package includes some extra utilities such as a clipboard converter for manipulating text between cut and paste operations.
+The core EncConverters assembly is fully integrated with FLEx (FieldWorks Language Explorer), Speech Analyzer, Phonology Assistant, Adapt It, OneStory Editor software, and now there's a Paratext Plug-in also. It provides the same system-wide registry of installed and available encoding converters for all of these user programs. Additionally the package includes some extra utilities such as a clipboard converter for manipulating text between cut and paste operations.
 
 The following picture illustrates the suite of tools, utilities, and applications that are available and how they interact:
 
@@ -20,13 +20,15 @@ If you are an end user, you are probably most interested in how to use EncConver
 
   * Using the Bulk Word Document Converter to convert the encoding of text in one or more Word document to Unicode, or
   * Using Bulk SFM Converter to convert SFM documents into Unicode (typically texts and lexicons from Shoebox to Toolbox)
+  * Using the Paratext plug-in to help with Back Translation (generally using one or more of the Translator EncConverters to get suggestions)
 
 If you are a developer, you may be interested in
 
   * Using EncConverters to gain access to the different transduction resources available by writing to the single EncConverters’ interface. See [this](https://software.sil.org/silconverters/silconverters-developer/) webpage for details and code snippets.
 
 ## Upgrade! New Features
-### For version 5.0
+### For version 5.1
+  * Support for the new web-based Translation resources (Bing, DeepL, and Google Translate)
   * Support 64 bit version of Microsoft Office, as well as continued support for 32 bit versions. See the documentation below for how to determine which bitness of Microsoft Office you have, and therefore which installer you should download.
   * Support newer versions of Microsoft Office (including 2019 and 365).
   * TECkit mapping editor can now show characters outside of the Basic Multilingual Plane (BMP), that is, Unicode characters above U+FFFF.
@@ -34,3 +36,31 @@ If you are a developer, you may be interested in
   * Updated TECkit to support Unicode 13.
 
 See also [this](https://software.sil.org/silconverters) page for more information and a signed installer download
+
+For building SILConverters (currently only on Windows), open the solution in Visual Studio in administrative mode, and click Rebuild All on the Build menu. 
+
+If you want to upgrade the EncConverters core nuget package, it is recommended to follow these steps rather than using the normal Manage Nuget packages approach (it doesn't update the package properly for x86 vs. x64 builds or use the pre-defined 'EcLibFilesPath' nuget property for the path to the new nuget package):
+  * With the Visual Studio Solution closed, use something like the 'Search', 'Find in Files' feature in Notepad++ to search these files and make replacements:
+     * Directory: <location of the solution folder> (e.g. C:\Users\<username>\source\repos\SilConverters\)
+	 * Check the 'In all sub-folders' checkbox
+	 * Search Mode: Normal
+
+     * Filters: packages.config
+	 * Find What: Encoding-Converters-Core" version="0.6.0
+	 * Replace With: Encoding-Converters-Core" version="0.6.1
+	 * Click the 'Replace in Files' button
+	 
+     * Filters: *.*proj
+	 * Find What: packages\Encoding-Converters-Core.0.6.0
+	 * Replace With: packages\Encoding-Converters-Core.0.6.1
+	 * Click the 'Replace in Files' button
+	 
+  * With File Explorer, delete these folders:
+     * <solution directory>\build\Obj
+	 * <solution directory>\output\x86, x64, Release, Debug
+	 * <solution directory>\packages\Encoding-Converters-Core
+	 
+  * Open Solution in Visual Studio, right-click on the Solution in the Solution Explorer and choose "Restore Nuget packages"
+  * Close the solution (File, Close Solution) and reopen it (don't skip this step!)
+  * Right-click the Solution in the Solution Explorer and choose 'Clean Solution' and then 'Rebuild All' (do this for each configuration you want)
+  * Run the tests to make sure everything is working as expected.

From ea4c121c05824fe62c785a1a5d3aa04ca299153c Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 12:17:55 -0500
Subject: [PATCH 60/71] fixed
 https://github.com/silnrsi/silconverters/pull/13#discussion_r1157398881

---
 .../BackTranslationHelperForm.cs                                | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
index 0791a14f..9a05748f 100644
--- a/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
+++ b/src/ParatextPluginBackTranslationHelper/BackTranslationHelperForm.cs
@@ -520,7 +520,7 @@ bool IBackTranslationHelperDataSource.WriteToTarget(string text)
                 {
                     // if we don't already have it... it's probably because something was changed in the project
                     //  external to this form (we lose the data if we get activated).
-                    System.Diagnostics.Debug.WriteLine($"PtxBTH: RequeryWarning");
+                    System.Diagnostics.Debug.WriteLine($"PtxBTH: RequeryWarning: _verseReference: {_verseReference}, _versesReference: {_versesReference}");
 
                     // Note: if the Target Translation textbox has modified data, the current implementation shouldn't
                     //  overwrite it (see UpdateData in BackTranslationHelperCtrl.cs, which shows that if it's

From c14a35bc6fdb19091edacbdaecf96fc4f07a7a78 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 12:22:44 -0500
Subject: [PATCH 61/71] attempted to fix this:
 https://github.com/silnrsi/silconverters/pull/13#discussion_r1157405726 but
 was unsuccessful except to fix the wrong year

---
 Installer/SetupSILConverters/SetupSILConverters.wixproj | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Installer/SetupSILConverters/SetupSILConverters.wixproj b/Installer/SetupSILConverters/SetupSILConverters.wixproj
index 315a021d..5be7713a 100644
--- a/Installer/SetupSILConverters/SetupSILConverters.wixproj
+++ b/Installer/SetupSILConverters/SetupSILConverters.wixproj
@@ -17,7 +17,7 @@
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
     <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
     <IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
-    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.3.0;UpgradeCode=8A50226C-84D0-4CAF-AF8F-B0284643C415;Year=2022;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
+    <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.3.0;UpgradeCode=8A50226C-84D0-4CAF-AF8F-B0284643C415;Year=2023;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
     <DefineConstants>ApplicationName=SILConverters;SafeApplicationName=SILConverters;TruncatedVersion=5.1;VersionNumber=5.1.3.0;UpgradeCode=0F7D5D72-E9F3-40BB-9748-D388C70096CD;Year=2023;Manufacturer=SIL International;EcDistFilesPath=$(EcDistFilesPath)</DefineConstants>

From 358d80977e6651e1433475694a58629884ad2a4c Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Fri, 7 Apr 2023 14:52:54 -0500
Subject: [PATCH 62/71] center the spellfixer dialog boxes when they appear (in
 case the translation dialog is on the edge (more likely) and pinned to the
 top (which would leave these hidden behind it)

---
 .../AddNewProjectForm.Designer.cs             |  1 +
 src/SpellingFixerEC/LoginSF.Designer.cs       | 19 ++++++++++---------
 2 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/src/SpellingFixerEC/AddNewProjectForm.Designer.cs b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
index d17e8cb9..f6670345 100644
--- a/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
+++ b/src/SpellingFixerEC/AddNewProjectForm.Designer.cs
@@ -223,6 +223,7 @@ private void InitializeComponent()
             this.ClientSize = new System.Drawing.Size(463, 315);
             this.Controls.Add(this.tableLayoutPanel);
             this.Name = "AddNewProjectForm";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
             this.Text = "Add New Project";
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.AddNewProjectForm_FormClosing);
             this.tableLayoutPanel.ResumeLayout(false);
diff --git a/src/SpellingFixerEC/LoginSF.Designer.cs b/src/SpellingFixerEC/LoginSF.Designer.cs
index 468cc51d..42018b79 100644
--- a/src/SpellingFixerEC/LoginSF.Designer.cs
+++ b/src/SpellingFixerEC/LoginSF.Designer.cs
@@ -55,7 +55,7 @@ private void InitializeComponent()
             this.checkedListBoxProjects.Dock = System.Windows.Forms.DockStyle.Fill;
             this.checkedListBoxProjects.Location = new System.Drawing.Point(3, 3);
             this.checkedListBoxProjects.Name = "checkedListBoxProjects";
-            this.checkedListBoxProjects.Size = new System.Drawing.Size(367, 210);
+            this.checkedListBoxProjects.Size = new System.Drawing.Size(485, 252);
             this.checkedListBoxProjects.TabIndex = 0;
             this.checkedListBoxProjects.ThreeDCheckBoxes = true;
             this.toolTips.SetToolTip(this.checkedListBoxProjects, "List of existing projects");
@@ -67,7 +67,7 @@ private void InitializeComponent()
             // 
             this.buttonOK.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.buttonOK.DialogResult = System.Windows.Forms.DialogResult.OK;
-            this.buttonOK.Location = new System.Drawing.Point(108, 219);
+            this.buttonOK.Location = new System.Drawing.Point(167, 261);
             this.buttonOK.Name = "buttonOK";
             this.buttonOK.Size = new System.Drawing.Size(75, 23);
             this.buttonOK.TabIndex = 11;
@@ -79,7 +79,7 @@ private void InitializeComponent()
             // 
             this.buttonCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
             this.buttonCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
-            this.buttonCancel.Location = new System.Drawing.Point(189, 219);
+            this.buttonCancel.Location = new System.Drawing.Point(248, 261);
             this.buttonCancel.Name = "buttonCancel";
             this.buttonCancel.Size = new System.Drawing.Size(75, 23);
             this.buttonCancel.TabIndex = 12;
@@ -140,8 +140,8 @@ private void InitializeComponent()
             | System.Windows.Forms.AnchorStyles.Right)));
             this.tableLayoutPanel.ColumnCount = 3;
             this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
-            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
-            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 20F));
+            this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 30F));
             this.tableLayoutPanel.Controls.Add(this.checkedListBoxProjects, 0, 0);
             this.tableLayoutPanel.Controls.Add(this.buttonCancel, 1, 1);
             this.tableLayoutPanel.Controls.Add(this.buttonOK, 0, 1);
@@ -151,15 +151,15 @@ private void InitializeComponent()
             this.tableLayoutPanel.RowCount = 2;
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
             this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-            this.tableLayoutPanel.Size = new System.Drawing.Size(373, 245);
+            this.tableLayoutPanel.Size = new System.Drawing.Size(491, 287);
             this.tableLayoutPanel.TabIndex = 14;
             // 
             // buttonAddNewProject
             // 
             this.buttonAddNewProject.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
-            this.buttonAddNewProject.Location = new System.Drawing.Point(295, 219);
+            this.buttonAddNewProject.Location = new System.Drawing.Point(378, 261);
             this.buttonAddNewProject.Name = "buttonAddNewProject";
-            this.buttonAddNewProject.Size = new System.Drawing.Size(75, 23);
+            this.buttonAddNewProject.Size = new System.Drawing.Size(110, 23);
             this.buttonAddNewProject.TabIndex = 13;
             this.buttonAddNewProject.Text = "&Add New Project";
             this.buttonAddNewProject.UseVisualStyleBackColor = true;
@@ -170,10 +170,11 @@ private void InitializeComponent()
             this.AcceptButton = this.buttonOK;
             this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
             this.CancelButton = this.buttonCancel;
-            this.ClientSize = new System.Drawing.Size(397, 269);
+            this.ClientSize = new System.Drawing.Size(515, 311);
             this.Controls.Add(this.tableLayoutPanel);
             this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
             this.Name = "LoginSF";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
             this.Text = "Select Find-Replace Project";
             this.Shown += new System.EventHandler(this.LoginSF_Shown);
             this.tableLayoutPanel.ResumeLayout(false);

From dc26d75a24fe97cb48ce37fb113750fa317de3fc Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 8 Apr 2023 08:13:15 -0500
Subject: [PATCH 63/71] oops. accidentally undid the fix recommended for:
 https://github.com/silnrsi/silconverters/issues/7

---
 Installer/SEC Setup 64bit/EcFeatures.wxs |  6 +++---
 Installer/SEC Setup/EcFeatures.wxs       | 10 +++++-----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/Installer/SEC Setup 64bit/EcFeatures.wxs b/Installer/SEC Setup 64bit/EcFeatures.wxs
index 9fc73344..c9111be1 100644
--- a/Installer/SEC Setup 64bit/EcFeatures.wxs	
+++ b/Installer/SEC Setup 64bit/EcFeatures.wxs	
@@ -63,7 +63,7 @@
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SILConvertersForWord"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2007, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2010_BITNESS = "x64") AND ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <MergeRef Id="SEC_EC"/>
@@ -73,7 +73,7 @@
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2007, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2013_BITNESS = "x64") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2016_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
@@ -83,7 +83,7 @@
         <MergeRef Id="SEC_ICU"/>
         <MergeRef Id="CRT"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/2019/365" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/2019/365" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2007, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2016_BITNESS = "x64") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2013_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
diff --git a/Installer/SEC Setup/EcFeatures.wxs b/Installer/SEC Setup/EcFeatures.wxs
index e8dd69d0..f9dd3667 100644
--- a/Installer/SEC Setup/EcFeatures.wxs	
+++ b/Installer/SEC Setup/EcFeatures.wxs	
@@ -66,7 +66,7 @@
         <MergeRef Id="SEC_EC"/>
         <MergeRef Id="SILConvertersForWord"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office_2003" Title="SILConverters for Office 2003" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office_2003" Title="SILConverters for Office 2003" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2003, 07, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(COMPONENTEXISTS_WORD_03_PIA) OR (COMPONENTEXISTS_EXCEL_03_PIA) OR (ACCESS_2003_PIA_EXISTS) OR (PUBLISHER_2003_PIA_EXISTS)]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_EXCEL_03_PIA) OR (ACCESS_2003_PIA_EXISTS) OR (PUBLISHER_2003_PIA_EXISTS))]]></Condition>
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
@@ -80,7 +80,7 @@
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
       </Feature>
-      <Feature Id="SILConverters_for_Office07" Title="SILConverters for Office 2007" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office07" Title="SILConverters for Office 2007" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2003, 07, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(COMPONENTEXISTS_WORD_07_PIA) OR (COMPONENTEXISTS_EXCEL_07_PIA) OR (ACCESS_2007_PIA_EXISTS) OR (PUBLISHER_2007_PIA_EXISTS)]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_WORD_07_PIA) OR (COMPONENTEXISTS_EXCEL_07_PIA) OR (ACCESS_2007_PIA_EXISTS) OR (PUBLISHER_2007_PIA_EXISTS))]]></Condition>
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
@@ -92,7 +92,7 @@
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
       </Feature>
-      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office10" Title="SILConverters for Office 2010" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2003, 07, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2010_BITNESS = "x86") AND ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[NOT ((COMPONENTEXISTS_WORD_10_PIA) OR (COMPONENTEXISTS_EXCEL_10_PIA) OR (ACCESS_2010_PIA_EXISTS) OR (PUBLISHER_2010_PIA_EXISTS))]]></Condition>
         <!--<MergeRef Id="Managed_Install_Fix"/>-->
@@ -104,7 +104,7 @@
         <!--<MergeRef Id="ICU"/>
                 <MergeRef Id="ICUECHelp"/>-->
       </Feature>
-      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office13" Title="SILConverters for Office 2013" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2003, 07, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2013_BITNESS = "x86") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2016_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>
@@ -113,7 +113,7 @@
         <MergeRef Id="SpellFixerEc"/>
         <MergeRef Id="SEC_ICU"/>
       </Feature>
-      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/19/365" Description="Provides SILConverter support in Publisher, Excel, and Access and Word (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
+      <Feature Id="SILConverters_for_Office16" Title="SILConverters for Office 2016/19/365" Description="Provides SILConverter support in Publisher, Excel, Access, and Word in Office 2003, 07, 10, 13, 16, 19, or 365 (including Regex searching and translation helper dialog)." Level="4" AllowAdvertise="no">
         <Condition Level="3"><![CDATA[(OFFICE_2016_BITNESS = "x86") AND ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS))]]></Condition>
         <Condition Level="0"><![CDATA[OFFICE_2013_BITNESS OR (NOT ((COMPONENTEXISTS_WORD_13_PIA) OR (COMPONENTEXISTS_EXCEL_13_PIA) OR (ACCESS_2013_PIA_EXISTS) OR (PUBLISHER_2013_PIA_EXISTS)))]]></Condition>
         <MergeRef Id="SEC_EC"/>

From 7cdc4193b9d09afc37c10ca1d9f8bea384d1a136 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Sat, 8 Apr 2023 08:13:50 -0500
Subject: [PATCH 64/71] ignoring some files that shouldn't have been checked in
 earlier

---
 .gitignore                        |    3 +
 .vs/SEC VS2010/v14/.suo           |  Bin 363520 -> 0 bytes
 .vs/SEC VS2015/v14/.suo           |  Bin 411136 -> 0 bytes
 .vs/config/applicationhost.config | 1030 -----------------------------
 4 files changed, 3 insertions(+), 1030 deletions(-)
 delete mode 100644 .vs/SEC VS2010/v14/.suo
 delete mode 100644 .vs/SEC VS2015/v14/.suo
 delete mode 100644 .vs/config/applicationhost.config

diff --git a/.gitignore b/.gitignore
index 90ed677e..2a8a083f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -273,3 +273,6 @@ autom4te.cache
 /redist/MapsTables/PythonExamples
 /redist/MapsTables/TestEncCnvtrs
 /genericinstaller
+/.vs/config/applicationhost.config
+/.vs/SEC VS2010/v14/.suo
+/.vs/SEC VS2015/v14/.suo
diff --git a/.vs/SEC VS2010/v14/.suo b/.vs/SEC VS2010/v14/.suo
deleted file mode 100644
index e344b58bacf6fa557ad47a49957b2c75ab117649..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 363520
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
W=aLZYRcV3)?5VK9rU)*4?*9SutkLuU

diff --git a/.vs/SEC VS2015/v14/.suo b/.vs/SEC VS2015/v14/.suo
deleted file mode 100644
index daeb8e36ed94557dd892cdf62ddb41fa7d9fba25..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 411136
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%0A6~9!EJ#CHY&+91ZK9quIg*m9W8ycD=$dadBCR
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
E2X*WpfB*mh

diff --git a/.vs/config/applicationhost.config b/.vs/config/applicationhost.config
deleted file mode 100644
index dfded7b7..00000000
--- a/.vs/config/applicationhost.config
+++ /dev/null
@@ -1,1030 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-    IIS configuration sections.
-
-    For schema documentation, see
-    %IIS_BIN%\config\schema\IIS_schema.xml.
-    
-    Please make a backup of this file before making any changes to it.
-
-    NOTE: The following environment variables are available to be used
-          within this file and are understood by the IIS Express.
-
-          %IIS_USER_HOME% - The IIS Express home directory for the user
-          %IIS_SITES_HOME% - The default home directory for sites
-          %IIS_BIN% - The location of the IIS Express binaries
-          %SYSTEMDRIVE% - The drive letter of %IIS_BIN%
-
--->
-
-<configuration>
-
-    <!--
-
-        The <configSections> section controls the registration of sections.
-        Section is the basic unit of deployment, locking, searching and
-        containment for configuration settings.
-        
-        Every section belongs to one section group.
-        A section group is a container of logically-related sections.
-        
-        Sections cannot be nested.
-        Section groups may be nested.
-        
-        <section
-            name=""  [Required, Collection Key] [XML name of the section]
-            allowDefinition="Everywhere" [MachineOnly|MachineToApplication|AppHostOnly|Everywhere] [Level where it can be set]
-            overrideModeDefault="Allow"  [Allow|Deny] [Default delegation mode]
-            allowLocation="true"  [true|false] [Allowed in location tags]
-        />
-        
-        The recommended way to unlock sections is by using a location tag:
-        <location path="Default Web Site" overrideMode="Allow">
-            <system.webServer>
-                <asp />
-            </system.webServer>
-        </location>
-
-    -->
-    <configSections>
-        <sectionGroup name="system.applicationHost">
-            <section name="applicationPools" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="configHistory" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="customMetadata" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="listenerAdapters" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="log" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="preloadProviders" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="sites" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="webLimits" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-        </sectionGroup>
-
-        <sectionGroup name="system.webServer">
-            <section name="asp" overrideModeDefault="Deny" />
-            <section name="caching" overrideModeDefault="Allow" />
-            <section name="cgi" overrideModeDefault="Deny" />
-            <section name="defaultDocument" overrideModeDefault="Allow" />
-            <section name="directoryBrowse" overrideModeDefault="Allow" />
-            <section name="fastCgi" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="globalModules" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-            <section name="handlers" overrideModeDefault="Deny" />
-            <section name="httpCompression" overrideModeDefault="Allow" />
-            <section name="httpErrors" overrideModeDefault="Allow" />
-            <section name="httpLogging" overrideModeDefault="Deny" />
-            <section name="httpProtocol" overrideModeDefault="Allow" />
-            <section name="httpRedirect" overrideModeDefault="Allow" />
-            <section name="httpTracing" overrideModeDefault="Deny" />
-            <section name="isapiFilters" allowDefinition="MachineToApplication" overrideModeDefault="Deny" />
-            <section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Deny" />
-            <section name="odbcLogging" overrideModeDefault="Deny" />
-            <sectionGroup name="security">
-                <section name="access" overrideModeDefault="Deny" />
-                <section name="applicationDependencies" overrideModeDefault="Deny" />
-                <sectionGroup name="authentication">
-                    <section name="anonymousAuthentication" overrideModeDefault="Deny" />
-                    <section name="basicAuthentication" overrideModeDefault="Deny" />
-                    <section name="clientCertificateMappingAuthentication" overrideModeDefault="Deny" />
-                    <section name="digestAuthentication" overrideModeDefault="Deny" />
-                    <section name="iisClientCertificateMappingAuthentication" overrideModeDefault="Deny" />
-                    <section name="windowsAuthentication" overrideModeDefault="Deny" />
-                </sectionGroup>
-                <section name="authorization" overrideModeDefault="Allow" />
-                <section name="ipSecurity" overrideModeDefault="Deny" />
-                <section name="dynamicIpSecurity" overrideModeDefault="Deny" />
-                <section name="isapiCgiRestriction" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
-                <section name="requestFiltering" overrideModeDefault="Allow" />
-            </sectionGroup>
-            <section name="serverRuntime" overrideModeDefault="Deny" />
-            <section name="serverSideInclude" overrideModeDefault="Deny" />
-            <section name="staticContent" overrideModeDefault="Allow" />
-            <sectionGroup name="tracing">
-                <section name="traceFailedRequests" overrideModeDefault="Allow" />
-                <section name="traceProviderDefinitions" overrideModeDefault="Deny" />
-            </sectionGroup>
-            <section name="urlCompression" overrideModeDefault="Allow" />
-            <section name="validation" overrideModeDefault="Allow" />
-            <sectionGroup name="webdav">
-                <section name="globalSettings" overrideModeDefault="Deny" />
-                <section name="authoring" overrideModeDefault="Deny" />
-                <section name="authoringRules" overrideModeDefault="Deny" />
-            </sectionGroup>
-            <sectionGroup name="rewrite">
-                <section name="allowedServerVariables" overrideModeDefault="Deny" />
-                <section name="rules" overrideModeDefault="Allow" />
-                <section name="outboundRules" overrideModeDefault="Allow" />
-                <section name="globalRules" overrideModeDefault="Deny" allowDefinition="AppHostOnly" />
-                <section name="providers" overrideModeDefault="Allow" />
-                <section name="rewriteMaps" overrideModeDefault="Allow" />
-            </sectionGroup>
-            <section name="applicationInitialization" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />
-            <section name="webSocket" overrideModeDefault="Deny" />
-        </sectionGroup>
-    </configSections>
-
-    <configProtectedData>
-        <providers>
-            <add name="IISWASOnlyRsaProvider" type="" description="Uses RsaCryptoServiceProvider to encrypt and decrypt" keyContainerName="iisWasKey" cspProviderName="" useMachineContainer="true" useOAEP="false" />
-            <add name="AesProvider" type="Microsoft.ApplicationHost.AesProtectedConfigurationProvider" description="Uses an AES session key to encrypt and decrypt" keyContainerName="iisConfigurationKey" cspProviderName="" useOAEP="false" useMachineContainer="true" sessionKey="AQIAAA5mAAAApAAAKmFQvWHDEETRz8l2bjZlRxIkwcqTFaCUnCLljn3Q1OkesrhEO9YyLyx4bUhsj1/DyShAv7OAFFhXlrlomaornnk5PLeyO4lIXxaiT33yOFUUgxDx4GSaygkqghVV0tO5yQ/XguUBp2juMfZyztnsNa4pLcz7ZNZQ6p4yn9hxwNs=" />
-            <add name="IISWASOnlyAesProvider" type="Microsoft.ApplicationHost.AesProtectedConfigurationProvider" description="Uses an AES session key to encrypt and decrypt" keyContainerName="iisWasKey" cspProviderName="" useOAEP="false" useMachineContainer="true" sessionKey="AQIAAA5mAAAApAAA4WoiRJ8KHwzAG8AgejPxEOO4/2Vhkolbwo/8gZeNdUDSD36m55hWv4uC9tr/MlKdnwRLL0NhT50Gccyftqz5xTZ0dg5FtvQhTw/he1NwexTKbV+I4Zrd+sZUqHZTsr7JiEr6OHGXL70qoISW5G2m9U8wKT3caPiDPNj2aAaYPLo=" />
-        </providers>
-    </configProtectedData>
-
-    <system.applicationHost>
-
-        <applicationPools>
-            <add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
-            <add name="Clr4ClassicAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Classic" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
-            <add name="Clr2IntegratedAppPool" managedRuntimeVersion="v2.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
-            <add name="Clr2ClassicAppPool" managedRuntimeVersion="v2.0" managedPipelineMode="Classic" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
-            <add name="UnmanagedClassicAppPool" managedRuntimeVersion="" managedPipelineMode="Classic" autoStart="true" />
-            <applicationPoolDefaults managedRuntimeLoader="v4.0" >
-                <processModel/>
-            </applicationPoolDefaults>
-        </applicationPools>
-
-        <!--
-
-          The <listenerAdapters> section defines the protocols with which the
-          Windows Process Activation Service (WAS) binds.
-
-        -->
-        <listenerAdapters>
-            <add name="http" />
-        </listenerAdapters>
-
-        <sites>
-            <site name="WebSite1" id="1" serverAutoStart="true">
-                <application path="/">
-                    <virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
-                </application>
-                <bindings>
-                    <binding protocol="http" bindingInformation=":8080:localhost" />
-                </bindings>
-            </site>
-            <siteDefaults>
-                <logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
-                <traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
-            </siteDefaults>
-            <applicationDefaults applicationPool="Clr4IntegratedAppPool" />
-            <virtualDirectoryDefaults allowSubDirConfig="true" />
-        </sites>
-
-        <webLimits />
-
-    </system.applicationHost>
-
-    <system.webServer>
-
-        <serverRuntime />
-
-        <asp scriptErrorSentToBrowser="true">
-            <cache diskTemplateCacheDirectory="%TEMP%\iisexpress\ASP Compiled Templates" />
-            <limits />
-        </asp>
-
-        <caching enabled="true" enableKernelCache="true">
-        </caching>
-
-        <cgi />
-
-        <defaultDocument enabled="true">
-            <files>
-                <add value="Default.htm" />
-                <add value="Default.asp" />
-                <add value="index.htm" />
-                <add value="index.html" />
-                <add value="iisstart.htm" />
-                <add value="default.aspx" />
-            </files>
-        </defaultDocument>
-
-        <directoryBrowse enabled="false" />
-
-        <fastCgi />
-
-        <!--
-
-          The <globalModules> section defines all native-code modules.
-          To enable a module, specify it in the <modules> section.
-
-        -->
-        <globalModules>
-            <add name="HttpLoggingModule" image="%IIS_BIN%\loghttp.dll" />
-            <add name="UriCacheModule" image="%IIS_BIN%\cachuri.dll" />
-<!--            <add name="FileCacheModule" image="%IIS_BIN%\cachfile.dll" />  -->
-            <add name="TokenCacheModule" image="%IIS_BIN%\cachtokn.dll" />
-<!--            <add name="HttpCacheModule" image="%IIS_BIN%\cachhttp.dll" /> -->
-            <add name="DynamicCompressionModule" image="%IIS_BIN%\compdyn.dll" />
-            <add name="StaticCompressionModule" image="%IIS_BIN%\compstat.dll" />
-            <add name="DefaultDocumentModule" image="%IIS_BIN%\defdoc.dll" />
-            <add name="DirectoryListingModule" image="%IIS_BIN%\dirlist.dll" />
-            <add name="ProtocolSupportModule" image="%IIS_BIN%\protsup.dll" />
-            <add name="HttpRedirectionModule" image="%IIS_BIN%\redirect.dll" />
-            <add name="ServerSideIncludeModule" image="%IIS_BIN%\iis_ssi.dll" />
-            <add name="StaticFileModule" image="%IIS_BIN%\static.dll" />
-            <add name="AnonymousAuthenticationModule" image="%IIS_BIN%\authanon.dll" />
-            <add name="CertificateMappingAuthenticationModule" image="%IIS_BIN%\authcert.dll" />
-            <add name="UrlAuthorizationModule" image="%IIS_BIN%\urlauthz.dll" />
-            <add name="BasicAuthenticationModule" image="%IIS_BIN%\authbas.dll" />
-            <add name="WindowsAuthenticationModule" image="%IIS_BIN%\authsspi.dll" />
-<!--            <add name="DigestAuthenticationModule" image="%IIS_BIN%\authmd5.dll" /> -->
-            <add name="IISCertificateMappingAuthenticationModule" image="%IIS_BIN%\authmap.dll" />
-            <add name="IpRestrictionModule" image="%IIS_BIN%\iprestr.dll" />
-            <add name="DynamicIpRestrictionModule" image="%IIS_BIN%\diprestr.dll" />
-            <add name="RequestFilteringModule" image="%IIS_BIN%\modrqflt.dll" />
-            <add name="CustomLoggingModule" image="%IIS_BIN%\logcust.dll" />
-            <add name="CustomErrorModule" image="%IIS_BIN%\custerr.dll" />
-<!--            <add name="TracingModule" image="%IIS_BIN%\iisetw.dll" /> -->
-            <add name="FailedRequestsTracingModule" image="%IIS_BIN%\iisfreb.dll" />
-            <add name="RequestMonitorModule" image="%IIS_BIN%\iisreqs.dll" />
-            <add name="IsapiModule" image="%IIS_BIN%\isapi.dll" />
-            <add name="IsapiFilterModule" image="%IIS_BIN%\filter.dll" />
-            <add name="CgiModule" image="%IIS_BIN%\cgi.dll" />
-            <add name="FastCgiModule" image="%IIS_BIN%\iisfcgi.dll" />
-<!--            <add name="WebDAVModule" image="%IIS_BIN%\webdav.dll" /> -->
-            <add name="RewriteModule" image="%IIS_BIN%\rewrite.dll" />
-            <add name="ConfigurationValidationModule" image="%IIS_BIN%\validcfg.dll" />
-            <add name="WebSocketModule" image="%IIS_BIN%\iiswsock.dll" />
-            <add name="WebMatrixSupportModule" image="%IIS_BIN%\webmatrixsup.dll" />
-            <add name="ManagedEngine" image="%windir%\Microsoft.NET\Framework\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness32" />
-            <add name="ManagedEngine64" image="%windir%\Microsoft.NET\Framework64\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness64" />
-            <add name="ManagedEngineV4.0_32bit" image="%windir%\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness32" />
-            <add name="ManagedEngineV4.0_64bit" image="%windir%\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness64" />
-            <add name="ApplicationInitializationModule" image="%IIS_BIN%\warmup.dll" />
-        </globalModules>
-
-        <httpCompression directory="%TEMP%\iisexpress\IIS Temporary Compressed Files">
-            <scheme name="gzip" dll="%IIS_BIN%\gzip.dll" />
-            <dynamicTypes>
-                <add mimeType="text/*" enabled="true" />
-                <add mimeType="message/*" enabled="true" />
-                <add mimeType="application/javascript" enabled="true" />
-                <add mimeType="application/atom+xml" enabled="true" />
-                <add mimeType="application/xaml+xml" enabled="true" />
-                <add mimeType="*/*" enabled="false" />
-            </dynamicTypes>
-            <staticTypes>
-                <add mimeType="text/*" enabled="true" />
-                <add mimeType="message/*" enabled="true" />
-                <add mimeType="image/svg+xml" enabled="true" />
-                <add mimeType="application/javascript" enabled="true" />
-                <add mimeType="application/atom+xml" enabled="true" />
-                <add mimeType="application/xaml+xml" enabled="true" />
-                <add mimeType="*/*" enabled="false" />
-            </staticTypes>
-        </httpCompression>
-
-        <httpErrors lockAttributes="allowAbsolutePathsWhenDelegated,defaultPath">
-            <error statusCode="401" prefixLanguageFilePath="%IIS_BIN%\custerr" path="401.htm" />
-            <error statusCode="403" prefixLanguageFilePath="%IIS_BIN%\custerr" path="403.htm" />
-            <error statusCode="404" prefixLanguageFilePath="%IIS_BIN%\custerr" path="404.htm" />
-            <error statusCode="405" prefixLanguageFilePath="%IIS_BIN%\custerr" path="405.htm" />
-            <error statusCode="406" prefixLanguageFilePath="%IIS_BIN%\custerr" path="406.htm" />
-            <error statusCode="412" prefixLanguageFilePath="%IIS_BIN%\custerr" path="412.htm" />
-            <error statusCode="500" prefixLanguageFilePath="%IIS_BIN%\custerr" path="500.htm" />
-            <error statusCode="501" prefixLanguageFilePath="%IIS_BIN%\custerr" path="501.htm" />
-            <error statusCode="502" prefixLanguageFilePath="%IIS_BIN%\custerr" path="502.htm" />
-        </httpErrors>
-
-        <httpLogging dontLog="false" />
-
-        <httpProtocol>
-            <customHeaders>
-                <clear />
-                <add name="X-Powered-By" value="ASP.NET" />
-            </customHeaders>
-            <redirectHeaders>
-                <clear />
-            </redirectHeaders>
-        </httpProtocol>
-
-        <httpRedirect enabled="false" />
-
-        <httpTracing>
-        </httpTracing>
-
-        <isapiFilters>
-            <filter name="ASP.Net_2.0.50727-64" path="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness64,runtimeVersionv2.0" />
-            <filter name="ASP.Net_2.0.50727.0" path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness32,runtimeVersionv2.0" />
-            <filter name="ASP.Net_2.0_for_v1.1" path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="runtimeVersionv1.1" />
-            <filter name="ASP.Net_4.0_32bit" path="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_filter.dll" enableCache="true" preCondition="bitness32,runtimeVersionv4.0" />
-            <filter name="ASP.Net_4.0_64bit" path="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_filter.dll" enableCache="true" preCondition="bitness64,runtimeVersionv4.0" />
-        </isapiFilters>
-
-        <odbcLogging />
-
-        <security>
-
-            <access sslFlags="None" />
-
-            <applicationDependencies>
-                <application name="Active Server Pages" groupId="ASP" />
-            </applicationDependencies>
-
-            <authentication>
-
-                <anonymousAuthentication enabled="true" userName="" />
-
-                <basicAuthentication enabled="false" />
-
-                <clientCertificateMappingAuthentication enabled="false" />
-
-                <digestAuthentication enabled="false" />
-
-                <iisClientCertificateMappingAuthentication enabled="false">
-                </iisClientCertificateMappingAuthentication>
-
-                <windowsAuthentication enabled="false">
-                    <providers>
-                        <add value="Negotiate" />
-                        <add value="NTLM" />
-                    </providers>
-                </windowsAuthentication>
-
-            </authentication>
-
-            <authorization>
-                <add accessType="Allow" users="*" />
-            </authorization>
-
-            <ipSecurity allowUnlisted="true" />
-
-            <isapiCgiRestriction notListedIsapisAllowed="true" notListedCgisAllowed="true">
-                <add path="%windir%\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" allowed="true" groupId="ASP.NET_v4.0" description="ASP.NET_v4.0" />
-                <add path="%windir%\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" allowed="true" groupId="ASP.NET_v4.0" description="ASP.NET_v4.0" />
-                <add path="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" allowed="true" groupId="ASP.NET v2.0.50727" description="ASP.NET v2.0.50727" />
-                <add path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" allowed="true" groupId="ASP.NET v2.0.50727" description="ASP.NET v2.0.50727" />
-            </isapiCgiRestriction>
-
-            <requestFiltering>
-                <fileExtensions allowUnlisted="true" applyToWebDAV="true">
-                    <add fileExtension=".asa" allowed="false" />
-                    <add fileExtension=".asax" allowed="false" />
-                    <add fileExtension=".ascx" allowed="false" />
-                    <add fileExtension=".master" allowed="false" />
-                    <add fileExtension=".skin" allowed="false" />
-                    <add fileExtension=".browser" allowed="false" />
-                    <add fileExtension=".sitemap" allowed="false" />
-                    <add fileExtension=".config" allowed="false" />
-                    <add fileExtension=".cs" allowed="false" />
-                    <add fileExtension=".csproj" allowed="false" />
-                    <add fileExtension=".vb" allowed="false" />
-                    <add fileExtension=".vbproj" allowed="false" />
-                    <add fileExtension=".webinfo" allowed="false" />
-                    <add fileExtension=".licx" allowed="false" />
-                    <add fileExtension=".resx" allowed="false" />
-                    <add fileExtension=".resources" allowed="false" />
-                    <add fileExtension=".mdb" allowed="false" />
-                    <add fileExtension=".vjsproj" allowed="false" />
-                    <add fileExtension=".java" allowed="false" />
-                    <add fileExtension=".jsl" allowed="false" />
-                    <add fileExtension=".ldb" allowed="false" />
-                    <add fileExtension=".dsdgm" allowed="false" />
-                    <add fileExtension=".ssdgm" allowed="false" />
-                    <add fileExtension=".lsad" allowed="false" />
-                    <add fileExtension=".ssmap" allowed="false" />
-                    <add fileExtension=".cd" allowed="false" />
-                    <add fileExtension=".dsprototype" allowed="false" />
-                    <add fileExtension=".lsaprototype" allowed="false" />
-                    <add fileExtension=".sdm" allowed="false" />
-                    <add fileExtension=".sdmDocument" allowed="false" />
-                    <add fileExtension=".mdf" allowed="false" />
-                    <add fileExtension=".ldf" allowed="false" />
-                    <add fileExtension=".ad" allowed="false" />
-                    <add fileExtension=".dd" allowed="false" />
-                    <add fileExtension=".ldd" allowed="false" />
-                    <add fileExtension=".sd" allowed="false" />
-                    <add fileExtension=".adprototype" allowed="false" />
-                    <add fileExtension=".lddprototype" allowed="false" />
-                    <add fileExtension=".exclude" allowed="false" />
-                    <add fileExtension=".refresh" allowed="false" />
-                    <add fileExtension=".compiled" allowed="false" />
-                    <add fileExtension=".msgx" allowed="false" />
-                    <add fileExtension=".vsdisco" allowed="false" />
-                    <add fileExtension=".rules" allowed="false" />
-                </fileExtensions>
-                <verbs allowUnlisted="true" applyToWebDAV="true" />
-                <hiddenSegments applyToWebDAV="true">
-                    <add segment="web.config" />
-                    <add segment="bin" />
-                    <add segment="App_code" />
-                    <add segment="App_GlobalResources" />
-                    <add segment="App_LocalResources" />
-                    <add segment="App_WebReferences" />
-                    <add segment="App_Data" />
-                    <add segment="App_Browsers" />
-                </hiddenSegments>
-            </requestFiltering>
-
-        </security>
-
-        <serverSideInclude ssiExecDisable="false" />
-
-        <staticContent lockAttributes="isDocFooterFileName">
-            <mimeMap fileExtension=".323" mimeType="text/h323" />
-            <mimeMap fileExtension=".3g2" mimeType="video/3gpp2" />
-            <mimeMap fileExtension=".3gp2" mimeType="video/3gpp2" />
-            <mimeMap fileExtension=".3gp" mimeType="video/3gpp" />
-            <mimeMap fileExtension=".3gpp" mimeType="video/3gpp" />
-            <mimeMap fileExtension=".aac" mimeType="audio/aac" />
-            <mimeMap fileExtension=".aaf" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".aca" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".accdb" mimeType="application/msaccess" />
-            <mimeMap fileExtension=".accde" mimeType="application/msaccess" />
-            <mimeMap fileExtension=".accdt" mimeType="application/msaccess" />
-            <mimeMap fileExtension=".acx" mimeType="application/internet-property-stream" />
-            <mimeMap fileExtension=".adt" mimeType="audio/vnd.dlna.adts" />
-            <mimeMap fileExtension=".adts" mimeType="audio/vnd.dlna.adts" />
-            <mimeMap fileExtension=".afm" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".ai" mimeType="application/postscript" />
-            <mimeMap fileExtension=".aif" mimeType="audio/x-aiff" />
-            <mimeMap fileExtension=".aifc" mimeType="audio/aiff" />
-            <mimeMap fileExtension=".aiff" mimeType="audio/aiff" />
-            <mimeMap fileExtension=".appcache" mimeType="text/cache-manifest" />
-            <mimeMap fileExtension=".application" mimeType="application/x-ms-application" />
-            <mimeMap fileExtension=".art" mimeType="image/x-jg" />
-            <mimeMap fileExtension=".asd" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".asf" mimeType="video/x-ms-asf" />
-            <mimeMap fileExtension=".asi" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".asm" mimeType="text/plain" />
-            <mimeMap fileExtension=".asr" mimeType="video/x-ms-asf" />
-            <mimeMap fileExtension=".asx" mimeType="video/x-ms-asf" />
-            <mimeMap fileExtension=".atom" mimeType="application/atom+xml" />
-            <mimeMap fileExtension=".au" mimeType="audio/basic" />
-            <mimeMap fileExtension=".avi" mimeType="video/msvideo" />
-            <mimeMap fileExtension=".axs" mimeType="application/olescript" />
-            <mimeMap fileExtension=".bas" mimeType="text/plain" />
-            <mimeMap fileExtension=".bcpio" mimeType="application/x-bcpio" />
-            <mimeMap fileExtension=".bin" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".bmp" mimeType="image/bmp" />
-            <mimeMap fileExtension=".c" mimeType="text/plain" />
-            <mimeMap fileExtension=".cab" mimeType="application/vnd.ms-cab-compressed" />
-            <mimeMap fileExtension=".calx" mimeType="application/vnd.ms-office.calx" />
-            <mimeMap fileExtension=".cat" mimeType="application/vnd.ms-pki.seccat" />
-            <mimeMap fileExtension=".cdf" mimeType="application/x-cdf" />
-            <mimeMap fileExtension=".chm" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".class" mimeType="application/x-java-applet" />
-            <mimeMap fileExtension=".clp" mimeType="application/x-msclip" />
-            <mimeMap fileExtension=".cmx" mimeType="image/x-cmx" />
-            <mimeMap fileExtension=".cnf" mimeType="text/plain" />
-            <mimeMap fileExtension=".cod" mimeType="image/cis-cod" />
-            <mimeMap fileExtension=".cpio" mimeType="application/x-cpio" />
-            <mimeMap fileExtension=".cpp" mimeType="text/plain" />
-            <mimeMap fileExtension=".crd" mimeType="application/x-mscardfile" />
-            <mimeMap fileExtension=".crl" mimeType="application/pkix-crl" />
-            <mimeMap fileExtension=".crt" mimeType="application/x-x509-ca-cert" />
-            <mimeMap fileExtension=".csh" mimeType="application/x-csh" />
-            <mimeMap fileExtension=".css" mimeType="text/css" />
-            <mimeMap fileExtension=".csv" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".cur" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".dcr" mimeType="application/x-director" />
-            <mimeMap fileExtension=".deploy" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".der" mimeType="application/x-x509-ca-cert" />
-            <mimeMap fileExtension=".dib" mimeType="image/bmp" />
-            <mimeMap fileExtension=".dir" mimeType="application/x-director" />
-            <mimeMap fileExtension=".disco" mimeType="text/xml" />
-            <mimeMap fileExtension=".dll" mimeType="application/x-msdownload" />
-            <mimeMap fileExtension=".dll.config" mimeType="text/xml" />
-            <mimeMap fileExtension=".dlm" mimeType="text/dlm" />
-            <mimeMap fileExtension=".doc" mimeType="application/msword" />
-            <mimeMap fileExtension=".docm" mimeType="application/vnd.ms-word.document.macroEnabled.12" />
-            <mimeMap fileExtension=".docx" mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.document" />
-            <mimeMap fileExtension=".dot" mimeType="application/msword" />
-            <mimeMap fileExtension=".dotm" mimeType="application/vnd.ms-word.template.macroEnabled.12" />
-            <mimeMap fileExtension=".dotx" mimeType="application/vnd.openxmlformats-officedocument.wordprocessingml.template" />
-            <mimeMap fileExtension=".dsp" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".dtd" mimeType="text/xml" />
-            <mimeMap fileExtension=".dvi" mimeType="application/x-dvi" />
-            <mimeMap fileExtension=".dvr-ms" mimeType="video/x-ms-dvr" />
-            <mimeMap fileExtension=".dwf" mimeType="drawing/x-dwf" />
-            <mimeMap fileExtension=".dwp" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".dxr" mimeType="application/x-director" />
-            <mimeMap fileExtension=".eml" mimeType="message/rfc822" />
-            <mimeMap fileExtension=".emz" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" />
-            <mimeMap fileExtension=".eps" mimeType="application/postscript" />
-            <mimeMap fileExtension=".etx" mimeType="text/x-setext" />
-            <mimeMap fileExtension=".evy" mimeType="application/envoy" />
-            <mimeMap fileExtension=".exe" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".exe.config" mimeType="text/xml" />
-            <mimeMap fileExtension=".fdf" mimeType="application/vnd.fdf" />
-            <mimeMap fileExtension=".fif" mimeType="application/fractals" />
-            <mimeMap fileExtension=".fla" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".flr" mimeType="x-world/x-vrml" />
-            <mimeMap fileExtension=".flv" mimeType="video/x-flv" />
-            <mimeMap fileExtension=".gif" mimeType="image/gif" />
-            <mimeMap fileExtension=".gtar" mimeType="application/x-gtar" />
-            <mimeMap fileExtension=".gz" mimeType="application/x-gzip" />
-            <mimeMap fileExtension=".h" mimeType="text/plain" />
-            <mimeMap fileExtension=".hdf" mimeType="application/x-hdf" />
-            <mimeMap fileExtension=".hdml" mimeType="text/x-hdml" />
-            <mimeMap fileExtension=".hhc" mimeType="application/x-oleobject" />
-            <mimeMap fileExtension=".hhk" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".hhp" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".hlp" mimeType="application/winhlp" />
-            <mimeMap fileExtension=".hqx" mimeType="application/mac-binhex40" />
-            <mimeMap fileExtension=".hta" mimeType="application/hta" />
-            <mimeMap fileExtension=".htc" mimeType="text/x-component" />
-            <mimeMap fileExtension=".htm" mimeType="text/html" />
-            <mimeMap fileExtension=".html" mimeType="text/html" />
-            <mimeMap fileExtension=".htt" mimeType="text/webviewhtml" />
-            <mimeMap fileExtension=".hxt" mimeType="text/html" />
-            <mimeMap fileExtension=".ico" mimeType="image/x-icon" />
-            <mimeMap fileExtension=".ics" mimeType="text/calendar" />
-            <mimeMap fileExtension=".ief" mimeType="image/ief" />
-            <mimeMap fileExtension=".iii" mimeType="application/x-iphone" />
-            <mimeMap fileExtension=".inf" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".ins" mimeType="application/x-internet-signup" />
-            <mimeMap fileExtension=".isp" mimeType="application/x-internet-signup" />
-            <mimeMap fileExtension=".IVF" mimeType="video/x-ivf" />
-            <mimeMap fileExtension=".jar" mimeType="application/java-archive" />
-            <mimeMap fileExtension=".java" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".jck" mimeType="application/liquidmotion" />
-            <mimeMap fileExtension=".jcz" mimeType="application/liquidmotion" />
-            <mimeMap fileExtension=".jfif" mimeType="image/pjpeg" />
-            <mimeMap fileExtension=".jpb" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".jpe" mimeType="image/jpeg" />
-            <mimeMap fileExtension=".jpeg" mimeType="image/jpeg" />
-            <mimeMap fileExtension=".jpg" mimeType="image/jpeg" />
-            <mimeMap fileExtension=".js" mimeType="application/javascript" />
-            <mimeMap fileExtension=".json" mimeType="application/json" />
-            <mimeMap fileExtension=".jsonld" mimeType="application/ld+json" />
-            <mimeMap fileExtension=".jsx" mimeType="text/jscript" />
-            <mimeMap fileExtension=".latex" mimeType="application/x-latex" />
-            <mimeMap fileExtension=".less" mimeType="text/css" />
-            <mimeMap fileExtension=".lit" mimeType="application/x-ms-reader" />
-            <mimeMap fileExtension=".lpk" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".lsf" mimeType="video/x-la-asf" />
-            <mimeMap fileExtension=".lsx" mimeType="video/x-la-asf" />
-            <mimeMap fileExtension=".lzh" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".m13" mimeType="application/x-msmediaview" />
-            <mimeMap fileExtension=".m14" mimeType="application/x-msmediaview" />
-            <mimeMap fileExtension=".m1v" mimeType="video/mpeg" />
-            <mimeMap fileExtension=".m2ts" mimeType="video/vnd.dlna.mpeg-tts" />
-            <mimeMap fileExtension=".m3u" mimeType="audio/x-mpegurl" />
-            <mimeMap fileExtension=".m4a" mimeType="audio/mp4" />
-            <mimeMap fileExtension=".m4v" mimeType="video/mp4" />
-            <mimeMap fileExtension=".man" mimeType="application/x-troff-man" />
-            <mimeMap fileExtension=".manifest" mimeType="application/x-ms-manifest" />
-            <mimeMap fileExtension=".map" mimeType="text/plain" />
-            <mimeMap fileExtension=".mdb" mimeType="application/x-msaccess" />
-            <mimeMap fileExtension=".mdp" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".me" mimeType="application/x-troff-me" />
-            <mimeMap fileExtension=".mht" mimeType="message/rfc822" />
-            <mimeMap fileExtension=".mhtml" mimeType="message/rfc822" />
-            <mimeMap fileExtension=".mid" mimeType="audio/mid" />
-            <mimeMap fileExtension=".midi" mimeType="audio/mid" />
-            <mimeMap fileExtension=".mix" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".mmf" mimeType="application/x-smaf" />
-            <mimeMap fileExtension=".mno" mimeType="text/xml" />
-            <mimeMap fileExtension=".mny" mimeType="application/x-msmoney" />
-            <mimeMap fileExtension=".mov" mimeType="video/quicktime" />
-            <mimeMap fileExtension=".movie" mimeType="video/x-sgi-movie" />
-            <mimeMap fileExtension=".mp2" mimeType="video/mpeg" />
-            <mimeMap fileExtension=".mp3" mimeType="audio/mpeg" />
-            <mimeMap fileExtension=".mp4" mimeType="video/mp4" />
-            <mimeMap fileExtension=".mp4v" mimeType="video/mp4" />
-            <mimeMap fileExtension=".mpa" mimeType="video/mpeg" />
-            <mimeMap fileExtension=".mpe" mimeType="video/mpeg" />
-            <mimeMap fileExtension=".mpeg" mimeType="video/mpeg" />
-            <mimeMap fileExtension=".mpg" mimeType="video/mpeg" />
-            <mimeMap fileExtension=".mpp" mimeType="application/vnd.ms-project" />
-            <mimeMap fileExtension=".mpv2" mimeType="video/mpeg" />
-            <mimeMap fileExtension=".ms" mimeType="application/x-troff-ms" />
-            <mimeMap fileExtension=".msi" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".mso" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".mvb" mimeType="application/x-msmediaview" />
-            <mimeMap fileExtension=".mvc" mimeType="application/x-miva-compiled" />
-            <mimeMap fileExtension=".nc" mimeType="application/x-netcdf" />
-            <mimeMap fileExtension=".nsc" mimeType="video/x-ms-asf" />
-            <mimeMap fileExtension=".nws" mimeType="message/rfc822" />
-            <mimeMap fileExtension=".ocx" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".oda" mimeType="application/oda" />
-            <mimeMap fileExtension=".odc" mimeType="text/x-ms-odc" />
-            <mimeMap fileExtension=".ods" mimeType="application/oleobject" />
-            <mimeMap fileExtension=".oga" mimeType="audio/ogg" />
-            <mimeMap fileExtension=".ogg" mimeType="video/ogg" />
-            <mimeMap fileExtension=".ogv" mimeType="video/ogg" />
-            <mimeMap fileExtension=".one" mimeType="application/onenote" />
-            <mimeMap fileExtension=".onea" mimeType="application/onenote" />
-            <mimeMap fileExtension=".onetoc" mimeType="application/onenote" />
-            <mimeMap fileExtension=".onetoc2" mimeType="application/onenote" />
-            <mimeMap fileExtension=".onetmp" mimeType="application/onenote" />
-            <mimeMap fileExtension=".onepkg" mimeType="application/onenote" />
-            <mimeMap fileExtension=".osdx" mimeType="application/opensearchdescription+xml" />
-            <mimeMap fileExtension=".otf" mimeType="font/otf" />
-            <mimeMap fileExtension=".p10" mimeType="application/pkcs10" />
-            <mimeMap fileExtension=".p12" mimeType="application/x-pkcs12" />
-            <mimeMap fileExtension=".p7b" mimeType="application/x-pkcs7-certificates" />
-            <mimeMap fileExtension=".p7c" mimeType="application/pkcs7-mime" />
-            <mimeMap fileExtension=".p7m" mimeType="application/pkcs7-mime" />
-            <mimeMap fileExtension=".p7r" mimeType="application/x-pkcs7-certreqresp" />
-            <mimeMap fileExtension=".p7s" mimeType="application/pkcs7-signature" />
-            <mimeMap fileExtension=".pbm" mimeType="image/x-portable-bitmap" />
-            <mimeMap fileExtension=".pcx" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".pcz" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".pdf" mimeType="application/pdf" />
-            <mimeMap fileExtension=".pfb" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".pfm" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".pfx" mimeType="application/x-pkcs12" />
-            <mimeMap fileExtension=".pgm" mimeType="image/x-portable-graymap" />
-            <mimeMap fileExtension=".pko" mimeType="application/vnd.ms-pki.pko" />
-            <mimeMap fileExtension=".pma" mimeType="application/x-perfmon" />
-            <mimeMap fileExtension=".pmc" mimeType="application/x-perfmon" />
-            <mimeMap fileExtension=".pml" mimeType="application/x-perfmon" />
-            <mimeMap fileExtension=".pmr" mimeType="application/x-perfmon" />
-            <mimeMap fileExtension=".pmw" mimeType="application/x-perfmon" />
-            <mimeMap fileExtension=".png" mimeType="image/png" />
-            <mimeMap fileExtension=".pnm" mimeType="image/x-portable-anymap" />
-            <mimeMap fileExtension=".pnz" mimeType="image/png" />
-            <mimeMap fileExtension=".pot" mimeType="application/vnd.ms-powerpoint" />
-            <mimeMap fileExtension=".potm" mimeType="application/vnd.ms-powerpoint.template.macroEnabled.12" />
-            <mimeMap fileExtension=".potx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.template" />
-            <mimeMap fileExtension=".ppam" mimeType="application/vnd.ms-powerpoint.addin.macroEnabled.12" />
-            <mimeMap fileExtension=".ppm" mimeType="image/x-portable-pixmap" />
-            <mimeMap fileExtension=".pps" mimeType="application/vnd.ms-powerpoint" />
-            <mimeMap fileExtension=".ppsm" mimeType="application/vnd.ms-powerpoint.slideshow.macroEnabled.12" />
-            <mimeMap fileExtension=".ppsx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.slideshow" />
-            <mimeMap fileExtension=".ppt" mimeType="application/vnd.ms-powerpoint" />
-            <mimeMap fileExtension=".pptm" mimeType="application/vnd.ms-powerpoint.presentation.macroEnabled.12" />
-            <mimeMap fileExtension=".pptx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.presentation" />
-            <mimeMap fileExtension=".prf" mimeType="application/pics-rules" />
-            <mimeMap fileExtension=".prm" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".prx" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".ps" mimeType="application/postscript" />
-            <mimeMap fileExtension=".psd" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".psm" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".psp" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".pub" mimeType="application/x-mspublisher" />
-            <mimeMap fileExtension=".qt" mimeType="video/quicktime" />
-            <mimeMap fileExtension=".qtl" mimeType="application/x-quicktimeplayer" />
-            <mimeMap fileExtension=".qxd" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".ra" mimeType="audio/x-pn-realaudio" />
-            <mimeMap fileExtension=".ram" mimeType="audio/x-pn-realaudio" />
-            <mimeMap fileExtension=".rar" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".ras" mimeType="image/x-cmu-raster" />
-            <mimeMap fileExtension=".rf" mimeType="image/vnd.rn-realflash" />
-            <mimeMap fileExtension=".rgb" mimeType="image/x-rgb" />
-            <mimeMap fileExtension=".rm" mimeType="application/vnd.rn-realmedia" />
-            <mimeMap fileExtension=".rmi" mimeType="audio/mid" />
-            <mimeMap fileExtension=".roff" mimeType="application/x-troff" />
-            <mimeMap fileExtension=".rpm" mimeType="audio/x-pn-realaudio-plugin" />
-            <mimeMap fileExtension=".rtf" mimeType="application/rtf" />
-            <mimeMap fileExtension=".rtx" mimeType="text/richtext" />
-            <mimeMap fileExtension=".scd" mimeType="application/x-msschedule" />
-            <mimeMap fileExtension=".sct" mimeType="text/scriptlet" />
-            <mimeMap fileExtension=".sea" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".setpay" mimeType="application/set-payment-initiation" />
-            <mimeMap fileExtension=".setreg" mimeType="application/set-registration-initiation" />
-            <mimeMap fileExtension=".sgml" mimeType="text/sgml" />
-            <mimeMap fileExtension=".sh" mimeType="application/x-sh" />
-            <mimeMap fileExtension=".shar" mimeType="application/x-shar" />
-            <mimeMap fileExtension=".sit" mimeType="application/x-stuffit" />
-            <mimeMap fileExtension=".sldm" mimeType="application/vnd.ms-powerpoint.slide.macroEnabled.12" />
-            <mimeMap fileExtension=".sldx" mimeType="application/vnd.openxmlformats-officedocument.presentationml.slide" />
-            <mimeMap fileExtension=".smd" mimeType="audio/x-smd" />
-            <mimeMap fileExtension=".smi" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".smx" mimeType="audio/x-smd" />
-            <mimeMap fileExtension=".smz" mimeType="audio/x-smd" />
-            <mimeMap fileExtension=".snd" mimeType="audio/basic" />
-            <mimeMap fileExtension=".snp" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".spc" mimeType="application/x-pkcs7-certificates" />
-            <mimeMap fileExtension=".spl" mimeType="application/futuresplash" />
-            <mimeMap fileExtension=".spx" mimeType="audio/ogg" />
-            <mimeMap fileExtension=".src" mimeType="application/x-wais-source" />
-            <mimeMap fileExtension=".ssm" mimeType="application/streamingmedia" />
-            <mimeMap fileExtension=".sst" mimeType="application/vnd.ms-pki.certstore" />
-            <mimeMap fileExtension=".stl" mimeType="application/vnd.ms-pki.stl" />
-            <mimeMap fileExtension=".sv4cpio" mimeType="application/x-sv4cpio" />
-            <mimeMap fileExtension=".sv4crc" mimeType="application/x-sv4crc" />
-            <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
-            <mimeMap fileExtension=".svgz" mimeType="image/svg+xml" />
-            <mimeMap fileExtension=".swf" mimeType="application/x-shockwave-flash" />
-            <mimeMap fileExtension=".t" mimeType="application/x-troff" />
-            <mimeMap fileExtension=".tar" mimeType="application/x-tar" />
-            <mimeMap fileExtension=".tcl" mimeType="application/x-tcl" />
-            <mimeMap fileExtension=".tex" mimeType="application/x-tex" />
-            <mimeMap fileExtension=".texi" mimeType="application/x-texinfo" />
-            <mimeMap fileExtension=".texinfo" mimeType="application/x-texinfo" />
-            <mimeMap fileExtension=".tgz" mimeType="application/x-compressed" />
-            <mimeMap fileExtension=".thmx" mimeType="application/vnd.ms-officetheme" />
-            <mimeMap fileExtension=".thn" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".tif" mimeType="image/tiff" />
-            <mimeMap fileExtension=".tiff" mimeType="image/tiff" />
-            <mimeMap fileExtension=".toc" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".tr" mimeType="application/x-troff" />
-            <mimeMap fileExtension=".trm" mimeType="application/x-msterminal" />
-            <mimeMap fileExtension=".ts" mimeType="video/vnd.dlna.mpeg-tts" />
-            <mimeMap fileExtension=".tsv" mimeType="text/tab-separated-values" />
-            <mimeMap fileExtension=".ttf" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".tts" mimeType="video/vnd.dlna.mpeg-tts" />
-            <mimeMap fileExtension=".txt" mimeType="text/plain" />
-            <mimeMap fileExtension=".u32" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".uls" mimeType="text/iuls" />
-            <mimeMap fileExtension=".ustar" mimeType="application/x-ustar" />
-            <mimeMap fileExtension=".vbs" mimeType="text/vbscript" />
-            <mimeMap fileExtension=".vcf" mimeType="text/x-vcard" />
-            <mimeMap fileExtension=".vcs" mimeType="text/plain" />
-            <mimeMap fileExtension=".vdx" mimeType="application/vnd.ms-visio.viewer" />
-            <mimeMap fileExtension=".vml" mimeType="text/xml" />
-            <mimeMap fileExtension=".vsd" mimeType="application/vnd.visio" />
-            <mimeMap fileExtension=".vss" mimeType="application/vnd.visio" />
-            <mimeMap fileExtension=".vst" mimeType="application/vnd.visio" />
-            <mimeMap fileExtension=".vsto" mimeType="application/x-ms-vsto" />
-            <mimeMap fileExtension=".vsw" mimeType="application/vnd.visio" />
-            <mimeMap fileExtension=".vsx" mimeType="application/vnd.visio" />
-            <mimeMap fileExtension=".vtx" mimeType="application/vnd.visio" />
-            <mimeMap fileExtension=".wav" mimeType="audio/wav" />
-            <mimeMap fileExtension=".wax" mimeType="audio/x-ms-wax" />
-            <mimeMap fileExtension=".wbmp" mimeType="image/vnd.wap.wbmp" />
-            <mimeMap fileExtension=".wcm" mimeType="application/vnd.ms-works" />
-            <mimeMap fileExtension=".wdb" mimeType="application/vnd.ms-works" />
-            <mimeMap fileExtension=".webm" mimeType="video/webm" />
-            <mimeMap fileExtension=".wks" mimeType="application/vnd.ms-works" />
-            <mimeMap fileExtension=".wm" mimeType="video/x-ms-wm" />
-            <mimeMap fileExtension=".wma" mimeType="audio/x-ms-wma" />
-            <mimeMap fileExtension=".wmd" mimeType="application/x-ms-wmd" />
-            <mimeMap fileExtension=".wmf" mimeType="application/x-msmetafile" />
-            <mimeMap fileExtension=".wml" mimeType="text/vnd.wap.wml" />
-            <mimeMap fileExtension=".wmlc" mimeType="application/vnd.wap.wmlc" />
-            <mimeMap fileExtension=".wmls" mimeType="text/vnd.wap.wmlscript" />
-            <mimeMap fileExtension=".wmlsc" mimeType="application/vnd.wap.wmlscriptc" />
-            <mimeMap fileExtension=".wmp" mimeType="video/x-ms-wmp" />
-            <mimeMap fileExtension=".wmv" mimeType="video/x-ms-wmv" />
-            <mimeMap fileExtension=".wmx" mimeType="video/x-ms-wmx" />
-            <mimeMap fileExtension=".wmz" mimeType="application/x-ms-wmz" />
-            <mimeMap fileExtension=".woff" mimeType="font/x-woff" />
-            <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
-            <mimeMap fileExtension=".wps" mimeType="application/vnd.ms-works" />
-            <mimeMap fileExtension=".wri" mimeType="application/x-mswrite" />
-            <mimeMap fileExtension=".wrl" mimeType="x-world/x-vrml" />
-            <mimeMap fileExtension=".wrz" mimeType="x-world/x-vrml" />
-            <mimeMap fileExtension=".wsdl" mimeType="text/xml" />
-            <mimeMap fileExtension=".wtv" mimeType="video/x-ms-wtv" />
-            <mimeMap fileExtension=".wvx" mimeType="video/x-ms-wvx" />
-            <mimeMap fileExtension=".x" mimeType="application/directx" />
-            <mimeMap fileExtension=".xaf" mimeType="x-world/x-vrml" />
-            <mimeMap fileExtension=".xaml" mimeType="application/xaml+xml" />
-            <mimeMap fileExtension=".xap" mimeType="application/x-silverlight-app" />
-            <mimeMap fileExtension=".xbap" mimeType="application/x-ms-xbap" />
-            <mimeMap fileExtension=".xbm" mimeType="image/x-xbitmap" />
-            <mimeMap fileExtension=".xdr" mimeType="text/plain" />
-            <mimeMap fileExtension=".xht" mimeType="application/xhtml+xml" />
-            <mimeMap fileExtension=".xhtml" mimeType="application/xhtml+xml" />
-            <mimeMap fileExtension=".xla" mimeType="application/vnd.ms-excel" />
-            <mimeMap fileExtension=".xlam" mimeType="application/vnd.ms-excel.addin.macroEnabled.12" />
-            <mimeMap fileExtension=".xlc" mimeType="application/vnd.ms-excel" />
-            <mimeMap fileExtension=".xlm" mimeType="application/vnd.ms-excel" />
-            <mimeMap fileExtension=".xls" mimeType="application/vnd.ms-excel" />
-            <mimeMap fileExtension=".xlsb" mimeType="application/vnd.ms-excel.sheet.binary.macroEnabled.12" />
-            <mimeMap fileExtension=".xlsm" mimeType="application/vnd.ms-excel.sheet.macroEnabled.12" />
-            <mimeMap fileExtension=".xlsx" mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
-            <mimeMap fileExtension=".xlt" mimeType="application/vnd.ms-excel" />
-            <mimeMap fileExtension=".xltm" mimeType="application/vnd.ms-excel.template.macroEnabled.12" />
-            <mimeMap fileExtension=".xltx" mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.template" />
-            <mimeMap fileExtension=".xlw" mimeType="application/vnd.ms-excel" />
-            <mimeMap fileExtension=".xml" mimeType="text/xml" />
-            <mimeMap fileExtension=".xof" mimeType="x-world/x-vrml" />
-            <mimeMap fileExtension=".xpm" mimeType="image/x-xpixmap" />
-            <mimeMap fileExtension=".xps" mimeType="application/vnd.ms-xpsdocument" />
-            <mimeMap fileExtension=".xsd" mimeType="text/xml" />
-            <mimeMap fileExtension=".xsf" mimeType="text/xml" />
-            <mimeMap fileExtension=".xsl" mimeType="text/xml" />
-            <mimeMap fileExtension=".xslt" mimeType="text/xml" />
-            <mimeMap fileExtension=".xsn" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".xtp" mimeType="application/octet-stream" />
-            <mimeMap fileExtension=".xwd" mimeType="image/x-xwindowdump" />
-            <mimeMap fileExtension=".z" mimeType="application/x-compress" />
-            <mimeMap fileExtension=".zip" mimeType="application/x-zip-compressed" />
-        </staticContent>
-
-        <tracing>
-
-             <traceProviderDefinitions>
-                <add name="WWW Server" guid="{3a2a4e84-4c21-4981-ae10-3fda0d9b0f83}">
-                    <areas>
-                        <clear />
-                        <add name="Authentication" value="2" />
-                        <add name="Security" value="4" />
-                        <add name="Filter" value="8" />
-                        <add name="StaticFile" value="16" />
-                        <add name="CGI" value="32" />
-                        <add name="Compression" value="64" />
-                        <add name="Cache" value="128" />
-                        <add name="RequestNotifications" value="256" />
-                        <add name="Module" value="512" />
-                        <add name="Rewrite" value="1024" />
-                        <add name="FastCGI" value="4096" />
-                        <add name="WebSocket" value="16384" />
-                    </areas>
-                </add>
-                <add name="ASP" guid="{06b94d9a-b15e-456e-a4ef-37c984a2cb4b}">
-                    <areas>
-                        <clear />
-                    </areas>
-                </add>
-                <add name="ISAPI Extension" guid="{a1c2040e-8840-4c31-ba11-9871031a19ea}">
-                    <areas>
-                        <clear />
-                    </areas>
-                </add>
-                <add name="ASPNET" guid="{AFF081FE-0247-4275-9C4E-021F3DC1DA35}">
-                    <areas>
-                        <add name="Infrastructure" value="1" />
-                        <add name="Module" value="2" />
-                        <add name="Page" value="4" />
-                        <add name="AppServices" value="8" />
-                    </areas>
-                </add>
-            </traceProviderDefinitions>
-
-            <traceFailedRequests>
-                <add path="*">
-                    <traceAreas>
-                        <add provider="ASP" verbosity="Verbose" />
-                        <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Verbose" />
-                        <add provider="ISAPI Extension" verbosity="Verbose" />
-                        <add provider="WWW Server" areas="Authentication,Security,Filter,StaticFile,CGI,Compression,Cache,RequestNotifications,Module,Rewrite,WebSocket" verbosity="Verbose" />
-                    </traceAreas>
-                    <failureDefinitions statusCodes="200-999" />
-                </add>
-            </traceFailedRequests>
-
-        </tracing>
-
-        <urlCompression />
-
-        <validation />
-        <webdav>
-            <globalSettings>
-                <propertyStores>
-                    <add name="webdav_simple_prop" image="%IIS_BIN%\webdav_simple_prop.dll" image32="%IIS_BIN%\webdav_simple_prop.dll" />
-                </propertyStores>
-                <lockStores>
-                    <add name="webdav_simple_lock" image="%IIS_BIN%\webdav_simple_lock.dll" image32="%IIS_BIN%\webdav_simple_lock.dll" />
-                </lockStores>
-
-            </globalSettings>
-            <authoring>
-                <locks enabled="true" lockStore="webdav_simple_lock" />
-            </authoring>
-            <authoringRules />
-        </webdav>
-        <webSocket />
-        <applicationInitialization />
-
-    </system.webServer>
-    <location path="" overrideMode="Allow">
-        <system.webServer>
-            <modules>
-                <add name="IsapiFilterModule" lockItem="true" />
-                <add name="BasicAuthenticationModule" lockItem="true" />
-                <add name="IsapiModule" lockItem="true" />
-                <add name="HttpLoggingModule" lockItem="true" />
-                <!--
-                <add name="HttpCacheModule" lockItem="true" />
--->
-                <add name="DynamicCompressionModule" lockItem="true" />
-                <add name="StaticCompressionModule" lockItem="true" />
-                <add name="DefaultDocumentModule" lockItem="true" />
-                <add name="DirectoryListingModule" lockItem="true" />
-
-                <add name="ProtocolSupportModule" lockItem="true" />
-                <add name="HttpRedirectionModule" lockItem="true" />
-                <add name="ServerSideIncludeModule" lockItem="true" />
-                <add name="StaticFileModule" lockItem="true" />
-                <add name="AnonymousAuthenticationModule" lockItem="true" />
-                <add name="CertificateMappingAuthenticationModule" lockItem="true" />
-                <add name="UrlAuthorizationModule" lockItem="true" />
-                <add name="WindowsAuthenticationModule" lockItem="true" />
-                <!--
-                <add name="DigestAuthenticationModule" lockItem="true" />
--->
-                <add name="IISCertificateMappingAuthenticationModule" lockItem="true" />
-                <add name="WebMatrixSupportModule" lockItem="true" />
-                <add name="IpRestrictionModule" lockItem="true" />
-                <add name="DynamicIpRestrictionModule" lockItem="true" />
-                <add name="RequestFilteringModule" lockItem="true" />
-                <add name="CustomLoggingModule" lockItem="true" />
-                <add name="CustomErrorModule" lockItem="true" />
-                <add name="FailedRequestsTracingModule" lockItem="true" />
-                <add name="CgiModule" lockItem="true" />
-                <add name="FastCgiModule" lockItem="true" />
-                <!--                <add name="WebDAVModule" /> -->
-                <add name="RewriteModule" />
-                <add name="OutputCache" type="System.Web.Caching.OutputCacheModule" preCondition="managedHandler" />
-                <add name="Session" type="System.Web.SessionState.SessionStateModule" preCondition="managedHandler" />
-                <add name="WindowsAuthentication" type="System.Web.Security.WindowsAuthenticationModule" preCondition="managedHandler" />
-                <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="managedHandler" />
-                <add name="DefaultAuthentication" type="System.Web.Security.DefaultAuthenticationModule" preCondition="managedHandler" />
-                <add name="RoleManager" type="System.Web.Security.RoleManagerModule" preCondition="managedHandler" />
-                <add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" preCondition="managedHandler" />
-                <add name="FileAuthorization" type="System.Web.Security.FileAuthorizationModule" preCondition="managedHandler" />
-                <add name="AnonymousIdentification" type="System.Web.Security.AnonymousIdentificationModule" preCondition="managedHandler" />
-                <add name="Profile" type="System.Web.Profile.ProfileModule" preCondition="managedHandler" />
-                <add name="UrlMappingsModule" type="System.Web.UrlMappingsModule" preCondition="managedHandler" />
-                <add name="ConfigurationValidationModule" lockItem="true" />
-                <add name="WebSocketModule" lockItem="true" />
-                <add name="ServiceModel-4.0" type="System.ServiceModel.Activation.ServiceHttpModule,System.ServiceModel.Activation,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35" preCondition="managedHandler,runtimeVersionv4.0" />
-                <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="managedHandler,runtimeVersionv4.0" />
-                <add name="ScriptModule-4.0" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="managedHandler,runtimeVersionv4.0" />
-                <add name="ServiceModel" type="System.ServiceModel.Activation.HttpModule, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler,runtimeVersionv2.0" />
-                <add name="ApplicationInitializationModule" lockItem="true" />
-            </modules>
-            <handlers accessPolicy="Read, Script">
-                <!--                <add name="WebDAV" path="*" verb="PROPFIND,PROPPATCH,MKCOL,PUT,COPY,DELETE,MOVE,LOCK,UNLOCK" modules="WebDAVModule" resourceType="Unspecified" requireAccess="None" /> -->
-                <add name="AXD-ISAPI-4.0_64bit" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="PageHandlerFactory-ISAPI-4.0_64bit" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="SimpleHandlerFactory-ISAPI-4.0_64bit" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="WebServiceHandlerFactory-ISAPI-4.0_64bit" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-rem-ISAPI-4.0_64bit" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-soap-ISAPI-4.0_64bit" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="svc-ISAPI-4.0_64bit" path="*.svc" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
-                <add name="rules-ISAPI-4.0_64bit" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
-                <add name="xoml-ISAPI-4.0_64bit" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
-                <add name="xamlx-ISAPI-4.0_64bit" path="*.xamlx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" />
-                <add name="aspq-ISAPI-4.0_64bit" path="*.aspq" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="cshtm-ISAPI-4.0_64bit" path="*.cshtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="cshtml-ISAPI-4.0_64bit" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="vbhtm-ISAPI-4.0_64bit" path="*.vbhtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="vbhtml-ISAPI-4.0_64bit" path="*.vbhtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="svc-Integrated" path="*.svc" verb="*" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="svc-ISAPI-2.0" path="*.svc" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
-                <add name="xoml-Integrated" path="*.xoml" verb="*" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="xoml-ISAPI-2.0" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
-                <add name="rules-Integrated" path="*.rules" verb="*" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="rules-ISAPI-2.0" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
-                <add name="AXD-ISAPI-4.0_32bit" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="PageHandlerFactory-ISAPI-4.0_32bit" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="SimpleHandlerFactory-ISAPI-4.0_32bit" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="WebServiceHandlerFactory-ISAPI-4.0_32bit" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-rem-ISAPI-4.0_32bit" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-soap-ISAPI-4.0_32bit" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="svc-ISAPI-4.0_32bit" path="*.svc" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
-                <add name="rules-ISAPI-4.0_32bit" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
-                <add name="xoml-ISAPI-4.0_32bit" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
-                <add name="xamlx-ISAPI-4.0_32bit" path="*.xamlx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
-                <add name="aspq-ISAPI-4.0_32bit" path="*.aspq" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="cshtm-ISAPI-4.0_32bit" path="*.cshtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="cshtml-ISAPI-4.0_32bit" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="vbhtm-ISAPI-4.0_32bit" path="*.vbhtm" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="vbhtml-ISAPI-4.0_32bit" path="*.vbhtml" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="TraceHandler-Integrated-4.0" path="trace.axd" verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.TraceHandler" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="WebAdminHandler-Integrated-4.0" path="WebAdmin.axd" verb="GET,DEBUG" type="System.Web.Handlers.WebAdminHandler" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="AssemblyResourceLoader-Integrated-4.0" path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="PageHandlerFactory-Integrated-4.0" path="*.aspx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.PageHandlerFactory" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="SimpleHandlerFactory-Integrated-4.0" path="*.ashx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.SimpleHandlerFactory" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="WebServiceHandlerFactory-Integrated-4.0" path="*.asmx" verb="GET,HEAD,POST,DEBUG" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="HttpRemotingHandlerFactory-rem-Integrated-4.0" path="*.rem" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="HttpRemotingHandlerFactory-soap-Integrated-4.0" path="*.soap" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="svc-Integrated-4.0" path="*.svc" verb="*" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="rules-Integrated-4.0" path="*.rules" verb="*" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="xoml-Integrated-4.0" path="*.xoml" verb="*" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="xamlx-Integrated-4.0" path="*.xamlx" verb="GET,HEAD,POST,DEBUG" type="System.Xaml.Hosting.XamlHttpHandlerFactory, System.Xaml.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="aspq-Integrated-4.0" path="*.aspq" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="cshtm-Integrated-4.0" path="*.cshtm" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="cshtml-Integrated-4.0" path="*.cshtml" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="vbhtm-Integrated-4.0" path="*.vbhtm" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="vbhtml-Integrated-4.0" path="*.vbhtml" verb="GET,HEAD,POST,DEBUG" type="System.Web.HttpForbiddenHandler" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="ScriptHandlerFactoryAppServices-Integrated-4.0" path="*_AppService.axd" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="ScriptResourceIntegrated-4.0" path="*ScriptResource.axd" verb="GET,HEAD" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" preCondition="integratedMode,runtimeVersionv4.0" />
-                <add name="ASPClassic" path="*.asp" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%IIS_BIN%\asp.dll" resourceType="File" />
-                <add name="SecurityCertificate" path="*.cer" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%IIS_BIN%\asp.dll" resourceType="File" />
-                <add name="ISAPI-dll" path="*.dll" verb="*" modules="IsapiModule" resourceType="File" requireAccess="Execute" allowPathInfo="true" />
-                <add name="TraceHandler-Integrated" path="trace.axd" verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.TraceHandler" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="WebAdminHandler-Integrated" path="WebAdmin.axd" verb="GET,DEBUG" type="System.Web.Handlers.WebAdminHandler" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="AssemblyResourceLoader-Integrated" path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="PageHandlerFactory-Integrated" path="*.aspx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.PageHandlerFactory" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="SimpleHandlerFactory-Integrated" path="*.ashx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.SimpleHandlerFactory" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="WebServiceHandlerFactory-Integrated" path="*.asmx" verb="GET,HEAD,POST,DEBUG" type="System.Web.Services.Protocols.WebServiceHandlerFactory,System.Web.Services,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="HttpRemotingHandlerFactory-rem-Integrated" path="*.rem" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,System.Runtime.Remoting,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="HttpRemotingHandlerFactory-soap-Integrated" path="*.soap" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,System.Runtime.Remoting,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089" preCondition="integratedMode,runtimeVersionv2.0" />
-                <add name="AXD-ISAPI-2.0" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
-                <add name="PageHandlerFactory-ISAPI-2.0" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
-                <add name="SimpleHandlerFactory-ISAPI-2.0" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
-                <add name="WebServiceHandlerFactory-ISAPI-2.0" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-rem-ISAPI-2.0" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-soap-ISAPI-2.0" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" />
-                <add name="svc-ISAPI-2.0-64" path="*.svc" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
-                <add name="AXD-ISAPI-2.0-64" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
-                <add name="PageHandlerFactory-ISAPI-2.0-64" path="*.aspx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
-                <add name="SimpleHandlerFactory-ISAPI-2.0-64" path="*.ashx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
-                <add name="WebServiceHandlerFactory-ISAPI-2.0-64" path="*.asmx" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-rem-ISAPI-2.0-64" path="*.rem" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
-                <add name="HttpRemotingHandlerFactory-soap-ISAPI-2.0-64" path="*.soap" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" responseBufferLimit="0" />
-                <add name="rules-64-ISAPI-2.0" path="*.rules" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
-                <add name="xoml-64-ISAPI-2.0" path="*.xoml" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
-                <add name="CGI-exe" path="*.exe" verb="*" modules="CgiModule" resourceType="File" requireAccess="Execute" allowPathInfo="true" />
-                <add name="SSINC-stm" path="*.stm" verb="GET,HEAD,POST" modules="ServerSideIncludeModule" resourceType="File" />
-                <add name="SSINC-shtm" path="*.shtm" verb="GET,HEAD,POST" modules="ServerSideIncludeModule" resourceType="File" />
-                <add name="SSINC-shtml" path="*.shtml" verb="GET,HEAD,POST" modules="ServerSideIncludeModule" resourceType="File" />
-                <add name="TRACEVerbHandler" path="*" verb="TRACE" modules="ProtocolSupportModule" requireAccess="None" />
-                <add name="OPTIONSVerbHandler" path="*" verb="OPTIONS" modules="ProtocolSupportModule" requireAccess="None" />
-                <add name="ExtensionlessUrl-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
-                <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
-                <add name="ExtensionlessUrl-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" responseBufferLimit="0" />
-                <add name="StaticFile" path="*" verb="*" modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" resourceType="Either" requireAccess="Read" />
-            </handlers>
-        </system.webServer>
-    </location>
-</configuration>

From c75fb3f6e909f6c0fd064fddd30851b8abb55a79 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Tue, 11 Apr 2023 07:28:22 -0500
Subject: [PATCH 65/71] make sure the word.doc and .app objects are released so
 we don't leave around a stranded winword.exe process

---
 src/SILConvertersWordML/FontsStylesForm.cs | 41 +++++++++++++++-------
 1 file changed, 29 insertions(+), 12 deletions(-)

diff --git a/src/SILConvertersWordML/FontsStylesForm.cs b/src/SILConvertersWordML/FontsStylesForm.cs
index bb1c3493..a18f5729 100644
--- a/src/SILConvertersWordML/FontsStylesForm.cs
+++ b/src/SILConvertersWordML/FontsStylesForm.cs
@@ -421,7 +421,9 @@ protected DocXmlDocument ConvertDocToXml(Word.Application wrdApp, string strDocF
                 ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                 ref oMissing, ref oMissing, ref oMissing);
 
-            wrdDoc.Close(ref oMissing, ref oMissing, ref oMissing);
+            wrdDoc.Close(false);
+            Marshal.ReleaseComObject(wrdDoc);
+            wrdDoc = null;
 
             SaveIntermediateXmlFile(ref strXmlFilename, cstrLeftXmlFileSuffixBefore,
                                     strDocFilename, 
@@ -445,11 +447,7 @@ protected XDocument SaveIntermediateXmlFile(ref string strXmlFilename, string st
             {
                 if (bSaveXmlOutputInFolder)
                 {
-                    if (doc == null)
-                    {
-                        doc = XDocument.Load(strXmlFilename);
-                        // doc.Load(strXmlFilename);
-                    }
+                    doc ??= XDocument.Load(strXmlFilename);
 
                     int nIndex = strDocFilename.LastIndexOf('.');
                     if (nIndex != -1)
@@ -462,8 +460,8 @@ protected XDocument SaveIntermediateXmlFile(ref string strXmlFilename, string st
                             File.Delete(strXmlFilename);
                     }
                 }
-                if (doc != null)
-                    doc.Save(strXmlFilename);
+                
+                doc?.Save(strXmlFilename);
             }
             catch (Exception ex)
             {
@@ -678,7 +676,9 @@ protected void ConvertXmlToDoc(Word.Application wrdApp, string strXmlFilename, s
                 ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                 ref oMissing, ref oMissing, ref oMissing);
 
-            wrdDoc.Close(ref oMissing, ref oMissing, ref oMissing);
+            wrdDoc.Close(false);
+            Marshal.ReleaseComObject(wrdDoc);
+            wrdDoc = null;
             
             try
             {
@@ -849,8 +849,9 @@ private void convertAndSaveDocumentsToolStripMenuItem_Click(object sender, Event
             }
             finally
             {
-                ((Microsoft.Office.Interop.Word._Application)wrdApp).Quit(ref oMissing, ref oMissing, ref oMissing);
+                wrdApp.Quit(false);
                 Marshal.ReleaseComObject(wrdApp);
+                wrdApp = null;
                 Cursor = Cursors.Default;
             }
         }
@@ -1062,9 +1063,24 @@ protected bool CheckForWinWord()
 				{
 					if (myProcess.ProcessName.ToLower() == "winword")
 					{
-						DialogResult res = MessageBox.Show("Close all running instances of Microsoft Word (including Outlook when Word is your email editor) and then click OK to continue.", cstrCaption, MessageBoxButtons.OKCancel);
+						var res = MessageBox.Show("It's best for any existing running instances of Microsoft Word (including Outlook when Word is the email editor) to be closed before doing the conversion. Would you like to close any other instances?", cstrCaption, MessageBoxButtons.YesNoCancel);
                         if (res == DialogResult.Cancel)
+                        {
                             return false;
+                        }                        
+                        else if (res == DialogResult.Yes)
+                        {
+                            try
+                            {
+                                myProcess.Close();
+                            }
+                            catch (Exception ex)
+                            {
+                                MessageBox.Show(ex.Message, cstrCaption);
+                            }
+                            bReady = true; 
+                            break;  // it's not absolutely necessary -- it just does things like wanting to close the normal.dot file... so just skip it if the user has tried this at least once...
+                        }
 						bReady = false;
 					}
 				}
@@ -1102,8 +1118,9 @@ protected void GetXmlDocuments(string[] astrFileNames)
             }
             finally
             {
-                ((Microsoft.Office.Interop.Word._Application)wrdApp).Quit(ref oMissing, ref oMissing, ref oMissing);
+                wrdApp.Quit(false);
                 Marshal.ReleaseComObject(wrdApp);
+                wrdApp = null;
             }
         }
 

From bb7765866cea3158fbf0a43131883616c474e621 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Tue, 11 Apr 2023 07:29:27 -0500
Subject: [PATCH 66/71] if the user changes some of the 'advanced' options,
 then we need to reload the documents

---
 .../FontsStylesForm.Designer.cs               | 24 ++++---
 src/SILConvertersWordML/FontsStylesForm.cs    | 11 ++-
 src/SILConvertersWordML/FontsStylesForm.resx  | 68 +++++++++++++------
 3 files changed, 68 insertions(+), 35 deletions(-)

diff --git a/src/SILConvertersWordML/FontsStylesForm.Designer.cs b/src/SILConvertersWordML/FontsStylesForm.Designer.cs
index 920ffc8e..c8d074eb 100644
--- a/src/SILConvertersWordML/FontsStylesForm.Designer.cs
+++ b/src/SILConvertersWordML/FontsStylesForm.Designer.cs
@@ -72,11 +72,11 @@ private void InitializeComponent()
             this.singlestepConversionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
             this.leaveXMLFileInFolderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
             this.useLinqToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+            this.combineIntoIsoformattedParagraphToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
             this.toolTip = new System.Windows.Forms.ToolTip(this.components);
             this.fontDialog = new System.Windows.Forms.FontDialog();
             this.saveFileDialog = new System.Windows.Forms.SaveFileDialog();
             this.helpProvider = new System.Windows.Forms.HelpProvider();
-            this.combineIntoIsoformattedParagraphToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
             this.tableLayoutPanel.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit();
             this.toolStrip.SuspendLayout();
@@ -505,6 +505,7 @@ private void InitializeComponent()
             this.leaveXMLFileInFolderToolStripMenuItem.Size = new System.Drawing.Size(280, 22);
             this.leaveXMLFileInFolderToolStripMenuItem.Text = "&Leave XML files in folder ";
             this.leaveXMLFileInFolderToolStripMenuItem.ToolTipText = resources.GetString("leaveXMLFileInFolderToolStripMenuItem.ToolTipText");
+            this.leaveXMLFileInFolderToolStripMenuItem.CheckStateChanged += new System.EventHandler(this.SomeCheckStateChangedRequiringReload);
             // 
             // useLinqToolStripMenuItem
             // 
@@ -515,7 +516,18 @@ private void InitializeComponent()
             this.useLinqToolStripMenuItem.Size = new System.Drawing.Size(280, 22);
             this.useLinqToolStripMenuItem.Text = "&Use Linq";
             this.useLinqToolStripMenuItem.ToolTipText = "Check this menu to have the \'Linq\' technology attempt to do the conversion (may y" +
-    "ield a different result if the normal approach doesn\'t work). Check this menu before opening the document.";
+    "ield a different result if the normal approach doesn\'t work). Check this menu be" +
+    "fore opening the document.";
+            this.useLinqToolStripMenuItem.CheckStateChanged += new System.EventHandler(this.SomeCheckStateChangedRequiringReload);
+            // 
+            // combineIntoIsoformattedParagraphToolStripMenuItem
+            // 
+            this.combineIntoIsoformattedParagraphToolStripMenuItem.CheckOnClick = true;
+            this.combineIntoIsoformattedParagraphToolStripMenuItem.Name = "combineIntoIsoformattedParagraphToolStripMenuItem";
+            this.combineIntoIsoformattedParagraphToolStripMenuItem.Size = new System.Drawing.Size(280, 22);
+            this.combineIntoIsoformattedParagraphToolStripMenuItem.Text = "&Combine into iso-formatted paragraph";
+            this.combineIntoIsoformattedParagraphToolStripMenuItem.ToolTipText = resources.GetString("combineIntoIsoformattedParagraphToolStripMenuItem.ToolTipText");
+            this.combineIntoIsoformattedParagraphToolStripMenuItem.CheckStateChanged += new System.EventHandler(this.SomeCheckStateChangedRequiringReload);
             // 
             // fontDialog
             // 
@@ -528,14 +540,6 @@ private void InitializeComponent()
             this.saveFileDialog.RestoreDirectory = true;
             this.saveFileDialog.SupportMultiDottedExtensions = true;
             // 
-            // combineIntoIsoformattedParagraphToolStripMenuItem
-            // 
-            this.combineIntoIsoformattedParagraphToolStripMenuItem.CheckOnClick = true;
-            this.combineIntoIsoformattedParagraphToolStripMenuItem.Name = "combineIntoIsoformattedParagraphToolStripMenuItem";
-            this.combineIntoIsoformattedParagraphToolStripMenuItem.Size = new System.Drawing.Size(280, 22);
-            this.combineIntoIsoformattedParagraphToolStripMenuItem.Text = "&Combine into iso-formatted paragraph";
-            this.combineIntoIsoformattedParagraphToolStripMenuItem.ToolTipText = resources.GetString("combineIntoIsoformattedParagraphToolStripMenuItem.ToolTipText");
-            // 
             // FontsStylesForm
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
diff --git a/src/SILConvertersWordML/FontsStylesForm.cs b/src/SILConvertersWordML/FontsStylesForm.cs
index a18f5729..89cbf3e3 100644
--- a/src/SILConvertersWordML/FontsStylesForm.cs
+++ b/src/SILConvertersWordML/FontsStylesForm.cs
@@ -679,7 +679,7 @@ protected void ConvertXmlToDoc(Word.Application wrdApp, string strXmlFilename, s
             wrdDoc.Close(false);
             Marshal.ReleaseComObject(wrdDoc);
             wrdDoc = null;
-            
+
             try
             {
                 // at least *try* to clean up the temp files
@@ -1054,7 +1054,7 @@ internal static string GetTempFilename
 
 		protected bool CheckForWinWord()
 		{
-			bool bReady;
+            bool bReady;
 			do
 			{
 				bReady = true;
@@ -1081,7 +1081,7 @@ protected bool CheckForWinWord()
                             bReady = true; 
                             break;  // it's not absolutely necessary -- it just does things like wanting to close the normal.dot file... so just skip it if the user has tried this at least once...
                         }
-						bReady = false;
+                        bReady = false;
 					}
 				}
 			} while (!bReady);
@@ -1748,5 +1748,10 @@ internal void AddFontIfNeeded(DocXmlDocument doc, string strStyleName)
                 RowMaxHeight = Math.Max(RowMaxHeight, font.Height);
             }
         }
+
+        private void SomeCheckStateChangedRequiringReload(object sender, EventArgs e)
+        {
+            Program.myTimer.Start();    // force reload
+        }
     }
 }
\ No newline at end of file
diff --git a/src/SILConvertersWordML/FontsStylesForm.resx b/src/SILConvertersWordML/FontsStylesForm.resx
index 76c71d4e..06371ef3 100644
--- a/src/SILConvertersWordML/FontsStylesForm.resx
+++ b/src/SILConvertersWordML/FontsStylesForm.resx
@@ -117,6 +117,9 @@
   <resheader name="writer">
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
+  <metadata name="toolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>656, 17</value>
+  </metadata>
   <metadata name="ColumnFont.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
@@ -135,6 +138,21 @@
   <metadata name="helpProvider.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>945, 17</value>
   </metadata>
+  <metadata name="ColumnFont.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ColumnSampleData.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ColumnConverter.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ColumnResults.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="ColumnTargetFont.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="toolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>656, 17</value>
   </metadata>
@@ -159,17 +177,17 @@
   <data name="toolStripButtonAutoSearch.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         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
-        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
+        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
 </value>
   </data>
   <data name="toolStripButtonConvertAndSave.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -197,17 +215,17 @@
   <data name="toolStripButtonSingleStep.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         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
-        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
+        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
 </value>
   </data>
   <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
@@ -225,6 +243,9 @@
   <data name="combineIntoIsoformattedParagraphToolStripMenuItem.ToolTipText" xml:space="preserve">
     <value>Check this menu to combine all the runs of text in a paragraph into a single run that has the formatting of the initial run of the paragraph. This is primarily to combine all the words in a paragraph together so they get converted together, which is recommended for when using a Translating EncConverter like Bing or DeepL, which work best with full sentences of text. Check this menu before opening the document.</value>
   </data>
+  <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>347, 17</value>
+  </metadata>
   <metadata name="fontDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>432, 17</value>
   </metadata>
@@ -234,6 +255,9 @@
   <data name="saveFileDialog.Filter" xml:space="preserve">
     <value>Word Document (*.doc)|*.doc|XML Document (*.xml)|*.xml|Single File Web Page (*.mht; *.mhtml)|*.mht; *.mhtml|Web Page (*.htm; *.html)|*.htm; *.html|Document Template (*.dot)|*.dot|Rich Text Format (*.rtf)|*.rtf|Encoded Text (*.txt)|*.txt|All files (*.*)|*.*</value>
   </data>
+  <metadata name="helpProvider.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>945, 17</value>
+  </metadata>
   <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         AAABAAIAICAQAAAAAADoAgAAJgAAABAQEAAAAAAAKAEAAA4DAAAoAAAAIAAAAEAAAAABAAQAAAAAAIAC

From d1211300212991787fee81039a5bb3e36e348bc4 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 12 Apr 2023 14:53:12 -0500
Subject: [PATCH 67/71] Change how the 'combineAllRunsIntoASingleRun' works so
 that if the first run(s) contains only punctuation, they don't define the
 font to use for the full run (since they are often in a different font in
 Word)

---
 src/SILConvertersWordML/WordLinqDocument.cs | 33 +++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/src/SILConvertersWordML/WordLinqDocument.cs b/src/SILConvertersWordML/WordLinqDocument.cs
index 37e9da9f..14da9ebc 100644
--- a/src/SILConvertersWordML/WordLinqDocument.cs
+++ b/src/SILConvertersWordML/WordLinqDocument.cs
@@ -235,13 +235,46 @@ public static void CombineAllRunsIntoSingleRun(XDocument doc)
                 if (firstRun == null)
                     continue;
 
+                bool firstNonPunctuationFound = false;
                 XElement textOfNextRun, textOfFirstRun = Get_t(firstRun);
                 for (var i = runs.IndexOf(firstRun) + 1; i < runs.Count; i++)
                 {
                     // combine the text of any subsequent "w:r"s that have text into the text field of the 1st one
                     var nextRun = runs[i];
                     if ((nextRun.Name == w + "r") && ((textOfNextRun = Get_t(nextRun)) != null))
+                    {
+                        // Often, punctuation comes across as the wrong font (e.g. if you have a double
+                        //  quote in Nastaliq, it'll be Times New Roman in Word. For punctuation-initial
+                        //  runs, we don't want them to set the font/style of the combined run...
+                        // if we haven't already found the first non-punctuation run of text,
+                        //  check the current accumulated text and if it's all punctuation, then
+                        //  if the next run is non-punctuation, then swap them, so that becomes
+                        //  the first run
+                        if (!firstNonPunctuationFound)
+                        {
+                            // if the current first run is all punctuation...
+                            if (textOfFirstRun.Value.All(ch => Char.IsPunctuation(ch)))
+                            {
+                                // if the next run has some non-punctuation...
+                                if (!textOfNextRun.Value.All(ch => Char.IsPunctuation(ch)))
+                                {
+                                    // then let's use that next run as a new first run and prepend
+                                    //  its data with the earlier punctuation.
+                                    var previousPunctuation = textOfFirstRun.Value;
+                                    firstRun.Remove();
+                                    firstRun = nextRun;
+                                    textOfFirstRun = Get_t(firstRun);
+                                    textOfFirstRun.Value = previousPunctuation + textOfFirstRun.Value;
+                                    firstNonPunctuationFound = true;
+                                    continue;
+                                }
+                            }
+                            else
+                                firstNonPunctuationFound = true;
+                        }
+
                         textOfFirstRun.Value += textOfNextRun.Value;
+                    }
 
                     // anything else (and any after the 1st one) are removed
                     nextRun.Remove();

From ea79bf641ccff2cbfce4d6d50461c5fd4317b066 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 12 Apr 2023 14:54:21 -0500
Subject: [PATCH 68/71] if the user chooses a Translator EncConverter, suggest
 that they use 'combineIsoFormattedParagraphs'

---
 src/SILConvertersWordML/FontsStylesForm.cs | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/SILConvertersWordML/FontsStylesForm.cs b/src/SILConvertersWordML/FontsStylesForm.cs
index 89cbf3e3..1905e730 100644
--- a/src/SILConvertersWordML/FontsStylesForm.cs
+++ b/src/SILConvertersWordML/FontsStylesForm.cs
@@ -1191,7 +1191,17 @@ private void dataGridView_CellMouseClick(object sender, DataGridViewCellMouseEve
                                 strFontName = strFontStyleName;
                             IEncConverter aIEC = aECs.AutoSelectWithData(strExampleData, strFontName, ConvType.Unknown, "Select Converter");
                             if (aIEC != null)
+                            {
                                 aEC = new DirectableEncConverter(aIEC);
+                                if (((aIEC.ProcessType & (int)ProcessTypeFlags.Translation) == (int)ProcessTypeFlags.Translation) &&
+                                    (!combineIntoIsoformattedParagraphToolStripMenuItem.Checked))
+                                {
+                                    if (MessageBox.Show("If you are using a Translator type converter, you probably want to combine all the data in a paragraph into a single font/style or it won't be converted together (which will likely give a less accurate translation). Would you like to combine the text into the style of the first run of text in the paragraph so they are translated as a unit? (you will lose any specially formatting within the paragraph)?", cstrCaption, MessageBoxButtons.YesNo) == DialogResult.Yes)
+                                    {
+                                        combineIntoIsoformattedParagraphToolStripMenuItem.CheckState = CheckState.Checked;
+                                    }
+                                }
+                            }
                         }
                     }
 

From 385ef73699e3b7ecc617e84a6eaa9693439bf6b5 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 12 Apr 2023 14:54:27 -0500
Subject: [PATCH 69/71] added a unit test to make sure that if we're converting
 paragraphs within table cells, that they are done properly.

---
 .../TestBwdc/TestBwdc.csproj                  |    2 +
 ...stFile_ConvertMiddleTableCell_Expected.xml |  650 +++
 .../TestFile_ConvertMiddleTableCell_Input.xml | 3547 +++++++++++++++++
 .../TestBwdc/UnitTest_BulkWordDocConverter.cs |   57 +-
 4 files changed, 4252 insertions(+), 4 deletions(-)
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml
 create mode 100644 src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Input.xml

diff --git a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
index 4ec0c75d..e617bf82 100644
--- a/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
+++ b/src/SILConvertersWordML/TestBwdc/TestBwdc.csproj
@@ -288,6 +288,8 @@
     <Content Include="redist\Help\Technical_Hindi_%28Google_group%29_Html_Converter_Plug-in_About_box.htm" />
     <Content Include="redist\Help\TECkit_Map_Plug-in_About_box.htm" />
     <Content Include="TestFiles\BulkWordDocConverter\TestFile1.xml" />
+    <EmbeddedResource Include="TestFiles\BulkWordDocConverter\TestFile_ConvertMiddleTableCell_Expected.xml" />
+    <EmbeddedResource Include="TestFiles\BulkWordDocConverter\TestFile_ConvertMiddleTableCell_Input.xml" />
     <Content Include="TestFiles\BulkWordDocConverter\TestFile2.xml" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceAndTargetWithVaOverride\CombinedInSourceAndTargetWithVaOverride_TranslatedText.txt" />
     <EmbeddedResource Include="TestFiles\PtxBackTrHelper\CombinedInSourceSeparateNoEmptyInTarget\CombinedInSourceSeparateNoEmptyInTarget_TranslatedText.txt" />
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml b/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml
new file mode 100644
index 00000000..246783df
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml
@@ -0,0 +1,650 @@
+<w:tbl>
+  <w:tblPr>
+    <w:bidiVisual />
+    <w:tblW w:w="0" w:type="auto" />
+    <w:tblBorders>
+      <w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+    </w:tblBorders>
+    <w:tblLook w:val="04A0" />
+  </w:tblPr>
+  <w:tblGrid>
+    <w:gridCol w:w="4261" />
+    <w:gridCol w:w="4410" />
+    <w:gridCol w:w="4505" />
+  </w:tblGrid>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="c-ChapterNumber" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="40" />
+            <w:sz-cs w:val="40" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="c-ChapterNumber" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="00BD201A">
+        <w:pPr>
+          <w:pStyle w:val="c-ChapterNumber" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="s-Heading-SectionLevel1" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>युहन्‍ना द्वारा परमेश्वर के पुत्र के लिए मार्ग तैयार किया जाना</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="s-Heading-SectionLevel1" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یوحنا خدا کے بیٹے کے لیے راستہ تیار کر رہا ہے</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="00BD201A">
+        <w:pPr>
+          <w:pStyle w:val="s-Heading-SectionLevel1" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یوحنا خدا کے بیٹے کے لیے راستہ تیار کر رہا ہے</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="p-Paragraph-Normal-FirstLineIndent" />
+          <w:ind w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1 यह सु-समाचार परमेश्वर के पुत्र यीशु मसीह के विषय में है, जो इस जगत में देह धारण कर आया। यह इस प्रकार है… 2 यीशु के देह धारण करने से लगभग सात सौ वर्ष पहले यशायाह नामक एक संत था। उसने यीशु के विषय में परमेश्वर की ओर से भविष्यवाणी कर यह वादा किया:</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="p-Paragraph-Normal-FirstLineIndent" />
+          <w:ind w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1 یہ خُوشخبری خُدا کے بیٹے یِسُوعؔ مسِیح کے بارے میں ہے; جو اِس دُنیا میں اِسان کی جِسم میں کر آیا, یہ اِس کے بارے میں ہے۔۔۔ 2 یِسُوعؔ کے اِسان کی جِسم میں کرنے سے تقریباً سات سو سال پہلے یسعیاہ نام کا ایک نبی تھا, اُس نے یِسُوعؔ کے بارے میں خُدا کی ترف سے پیشن گوئی کر یہ وعدہ کیا:</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="p-Paragraph-Normal-FirstLineIndent" />
+          <w:ind w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1 یہ خُوشخبری خُدا کے بیٹے یِسُوعؔ مسِیح کے بارے میں ہے; جو اِس دُنیا میں اِسان کی جِسم میں کر آیا, یہ اِس کے بارے میں ہے۔۔۔ 2 یِسُوعؔ کے اِسان کی جِسم میں کرنے سے تقریباً سات سو سال پہلے یسعیاہ نام کا ایک نبی تھا, اُس نے یِسُوعؔ کے بارے میں خُدا کی ترف سے پیشن گوئی کر یہ وعدہ کیا:</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>“‘देख! मैं अपने दूत को तुझ से पहले भेज रहा हूँ,</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>“‘دیکھ! مَیں اپنے پیغمبر کو تُجھ سے پہلے بھیج رہا ہُوں;</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>“‘دیکھ! مَیں اپنے پیغمبر کو تُجھ سے پہلے بھیج رہا ہُوں;</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जो तेरे आने से पहले लोगों के मनों को तुझे मान लेने के लिए तैयार करेगा।’” मलाकी 3:1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>جو تیرے آنے سے پہلے لوگوں کے منوں کو تُجھے مان لینے کے لئے تیار کرے گا;’”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>جو تیرے آنے سے پہلے لوگوں کے منوں کو تُجھے مان لینے کے لئے تیار کرے گا;’”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>3 “उजाड़ जंगल में एक दूत की आवाज आते-जाते लोगों को सुनाई देगी —</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>3 “اُجاڑ جنگل میں ایک پیغمبر کی آواز آتے جاتے لوگوں کو سنائی دے گی</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>3 “اُجاڑ جنگل میں ایک پیغمبر کی آواز آتے جاتے لوگوں کو سنائی دے گی</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>‘प्रभु के आने से पहले अपने हृदयों को साफ करो, और अपना जीवन सुधार लो’।” यशायाह 40:3</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>‘خُداوند کے آنے سے پہلے اپنے اپنے دلوں کو صاف کرو۔ اور اپنی زندگی سُدھار لو’;”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>‘خُداوند کے آنے سے پہلے اپنے اپنے دلوں کو صاف کرو۔ اور اپنی زندگی سُدھار لو’;”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+</w:tbl>
diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Input.xml b/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Input.xml
new file mode 100644
index 00000000..7994cb02
--- /dev/null
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Input.xml
@@ -0,0 +1,3547 @@
+<w:tbl>
+  <w:tblPr>
+    <w:bidiVisual />
+    <w:tblW w:w="0" w:type="auto" />
+    <w:tblBorders>
+      <w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+      <w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto" />
+    </w:tblBorders>
+    <w:tblLook w:val="04A0" />
+  </w:tblPr>
+  <w:tblGrid>
+    <w:gridCol w:w="4261" />
+    <w:gridCol w:w="4410" />
+    <w:gridCol w:w="4505" />
+  </w:tblGrid>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="c-ChapterNumber" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="40" />
+            <w:sz-cs w:val="40" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="c-ChapterNumber" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="00BD201A">
+        <w:pPr>
+          <w:pStyle w:val="c-ChapterNumber" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="s-Heading-SectionLevel1" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>युहन्</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>‍</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>ना</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>द्वारा</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>परमेश्वर</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>पुत्र</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>लिए</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>मार्ग</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>तैयार</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>किया</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जाना</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="s-Heading-SectionLevel1" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یوحنا خدا کے بیٹے کے لیے راستہ تیار کر رہا ہے</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="00BD201A">
+        <w:pPr>
+          <w:pStyle w:val="s-Heading-SectionLevel1" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یوحنا خدا کے بیٹے کے لیے راستہ تیار کر رہا ہے</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="p-Paragraph-Normal-FirstLineIndent" />
+          <w:ind w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1 </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>सु</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>-</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>समाचार</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>परमेश्वर</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>पुत्र</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यीशु</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>मसीह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>विषय</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>में</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>है</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>, </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जो</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>इस</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जगत</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>में</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>देह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>धारण</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>कर</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>आया।</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>इस</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>प्रकार</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>है</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>… </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>2 </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यीशु</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>देह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>धारण</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>करने</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>से</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>लगभग</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>सात</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>सौ</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>वर्ष</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>पहले</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यशायाह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>नामक</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>एक</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>संत</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>था।</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>उसने</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यीशु</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>विषय</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>में</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>परमेश्वर</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>की</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>ओर</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>से</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>भविष्यवाणी</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>कर</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>वादा</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>किया</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>:</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="p-Paragraph-Normal-FirstLineIndent" />
+          <w:ind w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یہ خُوشخبری خُدا کے بیٹے یِسُوعؔ مسِیح کے بارے میں ہے</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>; </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>جو اِس دُنیا میں اِسان کی جِسم میں کر آیا</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>, </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یہ اِس کے بارے میں ہے۔۔۔</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>2</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یِسُوعؔ کے اِسان کی جِسم میں کرنے سے تقریباً سات سو سال پہلے یسعیاہ نام کا ایک نبی تھا</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>, </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>اُس نے یِسُوعؔ کے بارے میں خُدا کی ترف سے پیشن گوئی کر یہ وعدہ کیا</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>:</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="p-Paragraph-Normal-FirstLineIndent" />
+          <w:ind w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>1</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Cambria" w:h-ansi="Cambria" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یہ خُوشخبری خُدا کے بیٹے یِسُوعؔ مسِیح کے بارے میں ہے; جو اِس دُنیا میں اِسان کی جِسم میں کر آیا, یہ اِس کے بارے میں ہے۔۔۔ </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>2</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Cambria" w:h-ansi="Cambria" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>یِسُوعؔ کے اِسان کی جِسم میں کرنے سے تقریباً سات سو سال پہلے یسعیاہ نام کا ایک نبی تھا, اُس نے یِسُوعؔ کے بارے میں خُدا کی ترف سے پیشن گوئی کر یہ وعدہ کیا:</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>“</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>‘</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>देख</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>! </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>मैं</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>अपने</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>दूत</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>को</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>तुझ</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>से</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>पहले</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>भेज</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>रहा</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>हूँ</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>,</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>“</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>‘دیکھ</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>! </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>مَیں اپنے پیغمبر کو تُجھ سے پہلے بھیج رہا ہُوں</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>;</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>“‘</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>دیکھ! مَیں اپنے پیغمبر کو تُجھ سے پہلے بھیج رہا ہُوں;</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जो</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>तेरे</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>आने</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>से</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>पहले</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>लोगों</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>मनों</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>को</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>तुझे</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>मान</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>लेने</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>लिए</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>तैयार</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>करेगा।</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>’” </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="rqrq-CrossReference-InlineQuotationReferences" />
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:i-cs />
+            <w:sz w:val="22" />
+            <w:sz-cs w:val="22" />
+            <w:cs />
+          </w:rPr>
+          <w:t>मलाकी</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="rqrq-CrossReference-InlineQuotationReferences" />
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:i-cs />
+            <w:sz w:val="22" />
+            <w:sz-cs w:val="22" />
+            <w:cs />
+          </w:rPr>
+          <w:t> 3:1</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>جو تیرے آنے سے پہلے لوگوں کے منوں کو تُجھے مان لینے کے لئے تیار کرے گا</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>;</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>’</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>جو تیرے آنے سے پہلے لوگوں کے منوں کو تُجھے مان لینے کے لئے تیار کرے گا;</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>’”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>3 </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>“</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>उजाड़</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जंगल</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>में</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>एक</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>दूत</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>की</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>आवाज</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>आते</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>-</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जाते</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>लोगों</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>को</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>सुनाई</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>देगी</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> —</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>3</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>“</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>اُجاڑ جنگل میں ایک پیغمبر کی آواز آتے جاتے لوگوں کو سنائی دے گی</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q1-Poetry-IndentLevel1" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>3</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="v-VerseNumber" />
+            <w:rFonts w:ascii="Cambria" w:h-ansi="Cambria" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>“</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>اُجاڑ جنگل میں ایک پیغمبر کی آواز آتے جاتے لوگوں کو سنائی دے گی</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+  <w:tr wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidTr="0080395C">
+    <w:trPr>
+      <w:cantSplit />
+      <w:trHeight w:val="1134" />
+    </w:trPr>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4261" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>‘</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>प्रभु</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>के</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>आने</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>से</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>पहले</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>अपने</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>हृदयों</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>को</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>साफ</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>करो</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+          <w:t>, </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>और</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>अपना</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>जीवन</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>सुधार</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t> </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>लो</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>’</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>।</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:cs />
+          </w:rPr>
+          <w:t>” </w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="rqrq-CrossReference-InlineQuotationReferences" />
+            <w:rFonts w:cs="Arial Unicode MS" w:hint="fareast" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:i-cs />
+            <w:sz w:val="22" />
+            <w:sz-cs w:val="22" />
+            <w:cs />
+          </w:rPr>
+          <w:t>यशायाह</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rStyle w:val="rqrq-CrossReference-InlineQuotationReferences" />
+            <w:rFonts w:cs="Arial Unicode MS" />
+            <wx:font wx:val="Arial Unicode MS" />
+            <w:i-cs />
+            <w:sz w:val="22" />
+            <w:sz-cs w:val="22" />
+            <w:cs />
+          </w:rPr>
+          <w:t> 40:3</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4410" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:jc w:val="right" />
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>‘خُداوند کے آنے سے پہلے اپنے اپنے دلوں کو صاف کرو۔ اور اپنی زندگی سُدھار لو’</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <wx:font wx:val="Mangal" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>;”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+    <w:tc>
+      <w:tcPr>
+        <w:tcW w:w="4505" w:type="dxa" />
+        <w:shd w:val="clear" w:color="auto" w:fill="auto" />
+      </w:tcPr>
+      <w:p wsp:rsidR="00BD201A" wsp:rsidRPr="0080395C" wsp:rsidRDefault="00BD201A" wsp:rsidP="0080395C">
+        <w:pPr>
+          <w:pStyle w:val="q2-Poetry-IndentLevel2" />
+          <w:ind w:left="0" w:first-line="0" />
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+          </w:rPr>
+        </w:pPr>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>‘</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>خُداوند کے آنے سے پہلے اپنے اپنے دلوں کو صاف کرو۔ اور اپنی زندگی سُدھار لو</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>’</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:cs="Nafees Nastaleeq" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>;</w:t>
+        </w:r>
+        <w:r wsp:rsidRPr="0080395C">
+          <w:rPr>
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
+            <wx:font wx:val="Times New Roman" />
+            <w:sz w:val="28" />
+            <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
+          </w:rPr>
+          <w:t>”</w:t>
+        </w:r>
+      </w:p>
+    </w:tc>
+  </w:tr>
+</w:tbl>
diff --git a/src/SILConvertersWordML/TestBwdc/UnitTest_BulkWordDocConverter.cs b/src/SILConvertersWordML/TestBwdc/UnitTest_BulkWordDocConverter.cs
index 9b266ed8..392d43a3 100644
--- a/src/SILConvertersWordML/TestBwdc/UnitTest_BulkWordDocConverter.cs
+++ b/src/SILConvertersWordML/TestBwdc/UnitTest_BulkWordDocConverter.cs
@@ -6,6 +6,7 @@
 using System.Xml.Linq;
 using Microsoft.VisualStudio.TestTools.UnitTesting;
 using SILConvertersWordML;
+using TestBwdc.TestFiles;
 
 namespace TestBwdc
 {
@@ -1322,11 +1323,59 @@ public void TestingCombiningRunsIntoSingleIsoFormattedParagraph_With_Initial_Non
             AssertEqual(strResult, cstrOutput);
         }
 
-        public void AssertEqual(string str1, string str2)
+        [TestMethod]
+        public void TestingCombiningRunsIntoSingleIsoFormattedParagraph_With_Text_In_A_Table()
+        {
+            // from C:\My Paratext 9 Projects\xnrUr\Mark 1_1-8 Urdu.rtf
+            var input = TestModel.LoadEmbeddedResourceFileAsStringExecutingAssembly("TestFile_ConvertMiddleTableCell_Input.xml");
+            var expected = TestModel.LoadEmbeddedResourceFileAsStringExecutingAssembly("TestFile_ConvertMiddleTableCell_Expected.xml");
+
+            var strExpectedDoc = String.Format(Properties.Resources.TestFile2,
+                                               expected);
+            var docExpected = XDocument.Parse(strExpectedDoc);
+            var paragraphsExpected = docExpected.Root.Descendants(WordLinqDocument.w + "p").ToList();
+
+            var strInput = String.Format(Properties.Resources.TestFile2,
+                                         input);
+            var doc = XDocument.Parse(strInput);
+            WordLinqDocument.CombineAllRunsIntoSingleRun(doc);
+
+            var paragraphsOutput = doc.Root.Descendants(WordLinqDocument.w + "p").ToList();
+            for (var i= 0; i < paragraphsOutput.Count; i++)
+            {
+                var paragraphExpected = paragraphsExpected[i];
+                var strExpected = paragraphExpected.ToString();
+                var paragraphOutput = paragraphsOutput[i];
+                var strResult = paragraphOutput.ToString();
+                AssertEqual(strExpected, strResult);
+            }
+        }
+
+        public void AssertEqual(string strExpected, string strResult)
+        {
+            var expected = RemoveSomeAttributes(RemoveNameSpaces(strExpected));
+            var result = RemoveSomeAttributes(RemoveNameSpaces(strResult));
+            Assert.IsTrue(XmlUtilities.AreXmlElementsEqual(expected, result));
+        }
+
+        private static List<string> _attributesToRemove = new List<string>
+        {
+            "rsidP",
+            "rsidR",
+            "rsidRDefault",
+            "rsidRPr",
+            "rsidTr"
+        };
+
+        private string RemoveSomeAttributes(string xml)
         {
-            string ours = RemoveNameSpaces(str1);
-            string theirs = RemoveNameSpaces(str2);
-            Assert.IsTrue(XmlUtilities.AreXmlElementsEqual(ours, theirs));
+            // some attributes may be different from the source to the expected target and don't mean it's different
+            foreach (var attributeName in  _attributesToRemove)
+            {
+                var regexExpression = $" {attributeName}=['\"].*?['\"]";
+                xml = Regex.Replace(xml, regexExpression, String.Empty);
+            }
+            return xml;
         }
 
         [TestMethod]

From 612bcab259a96246ee204164934e0e650b0997e2 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 12 Apr 2023 16:03:08 -0500
Subject: [PATCH 70/71] also don't want to use whitespace or digits as the
 indication of what font to use for a paragraph

---
 ...stFile_ConvertMiddleTableCell_Expected.xml | 54 ++++++++++---------
 src/SILConvertersWordML/WordLinqDocument.cs   | 14 ++++-
 2 files changed, 41 insertions(+), 27 deletions(-)

diff --git a/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml b/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml
index 246783df..4c682ff4 100644
--- a/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml
+++ b/src/SILConvertersWordML/TestBwdc/TestFiles/BulkWordDocConverter/TestFile_ConvertMiddleTableCell_Expected.xml
@@ -209,13 +209,13 @@
           </w:rPr>
         </w:pPr>
         <w:r wsp:rsidRPr="0080395C">
-          <w:rPr>
-            <w:rStyle w:val="v-VerseNumber" />
-            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
-            <wx:font wx:val="Arial Unicode MS" />
-            <w:sz w:val="28" />
-            <w:sz-cs w:val="28" />
-          </w:rPr>
+          <rPr>
+            <rFonts cs="Arial Unicode MS" hint="fareast" />
+            <font val="Arial Unicode MS"/>
+            <sz val="28" />
+            <sz-cs val="28" />
+            <cs />
+          </rPr>
           <w:t>1 यह सु-समाचार परमेश्वर के पुत्र यीशु मसीह के विषय में है, जो इस जगत में देह धारण कर आया। यह इस प्रकार है… 2 यीशु के देह धारण करने से लगभग सात सौ वर्ष पहले यशायाह नामक एक संत था। उसने यीशु के विषय में परमेश्वर की ओर से भविष्यवाणी कर यह वादा किया:</w:t>
         </w:r>
       </w:p>
@@ -240,11 +240,12 @@
         </w:pPr>
         <w:r wsp:rsidRPr="0080395C">
           <w:rPr>
-            <w:rStyle w:val="v-VerseNumber" />
-            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
             <wx:font wx:val="Times New Roman" />
             <w:sz w:val="28" />
             <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
           </w:rPr>
           <w:t>1 یہ خُوشخبری خُدا کے بیٹے یِسُوعؔ مسِیح کے بارے میں ہے; جو اِس دُنیا میں اِسان کی جِسم میں کر آیا, یہ اِس کے بارے میں ہے۔۔۔ 2 یِسُوعؔ کے اِسان کی جِسم میں کرنے سے تقریباً سات سو سال پہلے یسعیاہ نام کا ایک نبی تھا, اُس نے یِسُوعؔ کے بارے میں خُدا کی ترف سے پیشن گوئی کر یہ وعدہ کیا:</w:t>
         </w:r>
@@ -266,12 +267,13 @@
           </w:rPr>
         </w:pPr>
         <w:r wsp:rsidRPr="0080395C">
-          <w:rPr>
-            <w:rStyle w:val="v-VerseNumber" />
-            <w:rFonts w:cs="Nafees Nastaleeq" />
-            <w:sz w:val="28" />
-            <w:sz-cs w:val="28" />
-          </w:rPr>
+          <rPr>
+            <rFonts cs="Nafees Nastaleeq" />
+            <sz val="28" />
+            <sz-cs val="28" />
+            <rtl />
+            <lang bidi="AR-SA" />
+          </rPr>
           <w:t>1 یہ خُوشخبری خُدا کے بیٹے یِسُوعؔ مسِیح کے بارے میں ہے; جو اِس دُنیا میں اِسان کی جِسم میں کر آیا, یہ اِس کے بارے میں ہے۔۔۔ 2 یِسُوعؔ کے اِسان کی جِسم میں کرنے سے تقریباً سات سو سال پہلے یسعیاہ نام کا ایک نبی تھا, اُس نے یِسُوعؔ کے بارے میں خُدا کی ترف سے پیشن گوئی کر یہ وعدہ کیا:</w:t>
         </w:r>
       </w:p>
@@ -485,13 +487,13 @@
           </w:rPr>
         </w:pPr>
         <w:r wsp:rsidRPr="0080395C">
-          <w:rPr>
-            <w:rStyle w:val="v-VerseNumber" />
-            <w:rFonts w:ascii="Arial Unicode MS" w:fareast="Arial Unicode MS" w:h-ansi="Arial Unicode MS" w:cs="Arial Unicode MS" />
-            <wx:font wx:val="Arial Unicode MS" />
-            <w:sz w:val="28" />
-            <w:sz-cs w:val="28" />
-          </w:rPr>
+          <rPr>
+            <rFonts cs="Arial Unicode MS" hint="fareast" />
+            <font val="Arial Unicode MS"/>
+            <sz val="28" />
+            <sz-cs val="28" />
+            <cs />
+          </rPr>
           <w:t>3 “उजाड़ जंगल में एक दूत की आवाज आते-जाते लोगों को सुनाई देगी —</w:t>
         </w:r>
       </w:p>
@@ -516,11 +518,12 @@
         </w:pPr>
         <w:r wsp:rsidRPr="0080395C">
           <w:rPr>
-            <w:rStyle w:val="v-VerseNumber" />
-            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Mangal" />
+            <w:rFonts w:ascii="Times New Roman" w:h-ansi="Times New Roman" w:cs="Times New Roman" />
             <wx:font wx:val="Times New Roman" />
             <w:sz w:val="28" />
             <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
           </w:rPr>
           <w:t>3 “اُجاڑ جنگل میں ایک پیغمبر کی آواز آتے جاتے لوگوں کو سنائی دے گی</w:t>
         </w:r>
@@ -543,10 +546,11 @@
         </w:pPr>
         <w:r wsp:rsidRPr="0080395C">
           <w:rPr>
-            <w:rStyle w:val="v-VerseNumber" />
             <w:rFonts w:cs="Nafees Nastaleeq" />
             <w:sz w:val="28" />
             <w:sz-cs w:val="28" />
+            <w:rtl />
+            <w:lang w:bidi="AR-SA" />
           </w:rPr>
           <w:t>3 “اُجاڑ جنگل میں ایک پیغمبر کی آواز آتے جاتے لوگوں کو سنائی دے گی</w:t>
         </w:r>
diff --git a/src/SILConvertersWordML/WordLinqDocument.cs b/src/SILConvertersWordML/WordLinqDocument.cs
index 14da9ebc..47f0eadc 100644
--- a/src/SILConvertersWordML/WordLinqDocument.cs
+++ b/src/SILConvertersWordML/WordLinqDocument.cs
@@ -253,10 +253,10 @@ public static void CombineAllRunsIntoSingleRun(XDocument doc)
                         if (!firstNonPunctuationFound)
                         {
                             // if the current first run is all punctuation...
-                            if (textOfFirstRun.Value.All(ch => Char.IsPunctuation(ch)))
+                            if (textOfFirstRun.Value.All(ch => !IsIndicitiveForFont(ch)))
                             {
                                 // if the next run has some non-punctuation...
-                                if (!textOfNextRun.Value.All(ch => Char.IsPunctuation(ch)))
+                                if (!textOfNextRun.Value.All(ch => !IsIndicitiveForFont(ch)))
                                 {
                                     // then let's use that next run as a new first run and prepend
                                     //  its data with the earlier punctuation.
@@ -281,6 +281,16 @@ public static void CombineAllRunsIntoSingleRun(XDocument doc)
                 }
             }
         }
+        
+        /// <summary>
+        /// Returns whether the given character is a good value to decide whether this run qualifies as the run of the paragraph
+        /// </summary>
+        /// <param name="ch"></param>
+        /// <returns></returns>
+        private static bool IsIndicitiveForFont(char ch)
+        {
+            return !(Char.IsPunctuation(ch) || Char.IsWhiteSpace(ch) || Char.IsDigit(ch));
+        }
 
         /// <summary>
         /// This method will combine the w:t element values of sibling w:r elements whose w:rPr formatting specifications are equivalent

From b5f13ae32e68f49973187336a1511c31244071d9 Mon Sep 17 00:00:00 2001
From: bobeaton <bob_eaton@sall.com>
Date: Wed, 12 Apr 2023 16:15:30 -0500
Subject: [PATCH 71/71] lang version wasn't set for x86 build

---
 src/SILConvertersWordML/SILConvertersWordML.csproj | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/SILConvertersWordML/SILConvertersWordML.csproj b/src/SILConvertersWordML/SILConvertersWordML.csproj
index ee7b8b05..355f4109 100644
--- a/src/SILConvertersWordML/SILConvertersWordML.csproj
+++ b/src/SILConvertersWordML/SILConvertersWordML.csproj
@@ -45,6 +45,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <DebugType>full</DebugType>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
     <ErrorReport>prompt</ErrorReport>
@@ -57,6 +58,7 @@
     <Optimize>true</Optimize>
     <DebugType>pdbonly</DebugType>
     <PlatformTarget>x86</PlatformTarget>
+    <LangVersion>latest</LangVersion>
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
     <ErrorReport>prompt</ErrorReport>