Typo/grammar fixes in messages and comments
diff --git a/src/main/java/freemarker/core/ArithmeticEngine.java b/src/main/java/freemarker/core/ArithmeticEngine.java
index 5492b7a..e6be82b 100644
--- a/src/main/java/freemarker/core/ArithmeticEngine.java
+++ b/src/main/java/freemarker/core/ArithmeticEngine.java
@@ -126,7 +126,7 @@
                 return 0;
             } else {
                 // The most common case is comparing values of the same type. As BigDecimal can represent all of these
-                // with loseless round-trip (i.e., converting to BigDecimal and then back the original type gives the
+                // with lossless round-trip (i.e., converting to BigDecimal and then back the original type gives the
                 // original value), we can avoid conversion to BigDecimal without changing the result.
                 if (first.getClass() == second.getClass()) {
                     // Bit of optimization for this is a very common case:
diff --git a/src/main/java/freemarker/core/TemplateNumberFormat.java b/src/main/java/freemarker/core/TemplateNumberFormat.java
index 2332575..10ca968 100644
--- a/src/main/java/freemarker/core/TemplateNumberFormat.java
+++ b/src/main/java/freemarker/core/TemplateNumberFormat.java
@@ -83,8 +83,7 @@
      * will be support, it will be similar to {@link TemplateDateFormat#parse(String, int)}.
      */
     public final Object parse(String s) throws TemplateValueFormatException {
-        throw new ParsingNotSupportedException("Number formats currenly don't support parsing");
+        throw new ParsingNotSupportedException("Number formats currently don't support parsing");
     }
-    
-    
+
 }
diff --git a/src/main/java/freemarker/core/_ArrayEnumeration.java b/src/main/java/freemarker/core/_ArrayEnumeration.java
index 70d7983..72212a9 100644
--- a/src/main/java/freemarker/core/_ArrayEnumeration.java
+++ b/src/main/java/freemarker/core/_ArrayEnumeration.java
@@ -22,7 +22,7 @@
 import java.util.Enumeration;
 import java.util.NoSuchElementException;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _ArrayEnumeration implements Enumeration {
 
     private final Object[] array;
diff --git a/src/main/java/freemarker/core/_ArrayIterator.java b/src/main/java/freemarker/core/_ArrayIterator.java
index f7cca25..465ab21 100644
--- a/src/main/java/freemarker/core/_ArrayIterator.java
+++ b/src/main/java/freemarker/core/_ArrayIterator.java
@@ -22,7 +22,7 @@
 import java.util.Iterator;
 import java.util.NoSuchElementException;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _ArrayIterator implements Iterator {
 
     private final Object[] array;
diff --git a/src/main/java/freemarker/core/_DelayedAOrAn.java b/src/main/java/freemarker/core/_DelayedAOrAn.java
index 8d7306e..2ed0352 100644
--- a/src/main/java/freemarker/core/_DelayedAOrAn.java
+++ b/src/main/java/freemarker/core/_DelayedAOrAn.java
@@ -19,7 +19,7 @@
 
 package freemarker.core;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _DelayedAOrAn extends _DelayedConversionToString {
 
     public _DelayedAOrAn(Object object) {
diff --git a/src/main/java/freemarker/core/_DelayedConversionToString.java b/src/main/java/freemarker/core/_DelayedConversionToString.java
index a705c01..65c9fae 100644
--- a/src/main/java/freemarker/core/_DelayedConversionToString.java
+++ b/src/main/java/freemarker/core/_DelayedConversionToString.java
@@ -19,7 +19,7 @@
 
 package freemarker.core;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public abstract class _DelayedConversionToString {
 
     private static final String NOT_SET = new String();
diff --git a/src/main/java/freemarker/core/_DelayedFTLTypeDescription.java b/src/main/java/freemarker/core/_DelayedFTLTypeDescription.java
index 93d8713..90f2807 100644
--- a/src/main/java/freemarker/core/_DelayedFTLTypeDescription.java
+++ b/src/main/java/freemarker/core/_DelayedFTLTypeDescription.java
@@ -22,7 +22,7 @@
 import freemarker.template.TemplateModel;
 import freemarker.template.utility.ClassUtil;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _DelayedFTLTypeDescription extends _DelayedConversionToString {
     
     public _DelayedFTLTypeDescription(TemplateModel tm) {
diff --git a/src/main/java/freemarker/core/_DelayedGetCanonicalForm.java b/src/main/java/freemarker/core/_DelayedGetCanonicalForm.java
index 2f070f5..2637766 100644
--- a/src/main/java/freemarker/core/_DelayedGetCanonicalForm.java
+++ b/src/main/java/freemarker/core/_DelayedGetCanonicalForm.java
@@ -20,7 +20,7 @@
 package freemarker.core;
 
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _DelayedGetCanonicalForm extends _DelayedConversionToString {
     
     public _DelayedGetCanonicalForm(TemplateObject obj) {
diff --git a/src/main/java/freemarker/core/_DelayedGetMessage.java b/src/main/java/freemarker/core/_DelayedGetMessage.java
index ed2fe56..3254396 100644
--- a/src/main/java/freemarker/core/_DelayedGetMessage.java
+++ b/src/main/java/freemarker/core/_DelayedGetMessage.java
@@ -19,7 +19,7 @@
 
 package freemarker.core;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _DelayedGetMessage extends _DelayedConversionToString {
 
     public _DelayedGetMessage(Throwable exception) {
diff --git a/src/main/java/freemarker/core/_DelayedGetMessageWithoutStackTop.java b/src/main/java/freemarker/core/_DelayedGetMessageWithoutStackTop.java
index 56111d0..e3e415a 100644
--- a/src/main/java/freemarker/core/_DelayedGetMessageWithoutStackTop.java
+++ b/src/main/java/freemarker/core/_DelayedGetMessageWithoutStackTop.java
@@ -21,7 +21,7 @@
 
 import freemarker.template.TemplateException;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _DelayedGetMessageWithoutStackTop extends _DelayedConversionToString {
 
     public _DelayedGetMessageWithoutStackTop(TemplateException exception) {
diff --git a/src/main/java/freemarker/core/_DelayedJQuote.java b/src/main/java/freemarker/core/_DelayedJQuote.java
index 7dfef58..48bfaed 100644
--- a/src/main/java/freemarker/core/_DelayedJQuote.java
+++ b/src/main/java/freemarker/core/_DelayedJQuote.java
@@ -21,7 +21,7 @@
 
 import freemarker.template.utility.StringUtil;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _DelayedJQuote extends _DelayedConversionToString {
 
     public _DelayedJQuote(Object object) {
diff --git a/src/main/java/freemarker/core/_DelayedJoinWithComma.java b/src/main/java/freemarker/core/_DelayedJoinWithComma.java
index 68ce8b9..17a64a2 100644
--- a/src/main/java/freemarker/core/_DelayedJoinWithComma.java
+++ b/src/main/java/freemarker/core/_DelayedJoinWithComma.java
@@ -19,7 +19,7 @@
 
 package freemarker.core;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _DelayedJoinWithComma extends _DelayedConversionToString {
 
     public _DelayedJoinWithComma(String[] items) {
diff --git a/src/main/java/freemarker/core/_ErrorDescriptionBuilder.java b/src/main/java/freemarker/core/_ErrorDescriptionBuilder.java
index 8c7563d..2b570d8 100644
--- a/src/main/java/freemarker/core/_ErrorDescriptionBuilder.java
+++ b/src/main/java/freemarker/core/_ErrorDescriptionBuilder.java
@@ -31,7 +31,7 @@
 import freemarker.template.utility.StringUtil;
 
 /**
- * Used internally only, might changes without notice!
+ * Used internally only, might change without notice!
  * Packs a structured from of the error description from which the error message can be rendered on-demand.
  * Note that this class isn't serializable, thus the containing exception should render the message before it's
  * serialized.
diff --git a/src/main/java/freemarker/core/_Java8.java b/src/main/java/freemarker/core/_Java8.java
index 34979da..e1a3954 100644
--- a/src/main/java/freemarker/core/_Java8.java
+++ b/src/main/java/freemarker/core/_Java8.java
@@ -21,7 +21,7 @@
 import java.lang.reflect.Method;
 
 /**
- * Used internally only, might changes without notice!
+ * Used internally only, might change without notice!
  * Used for accessing functionality that's only present in Java 8 or later.
  */
 public interface _Java8 {
diff --git a/src/main/java/freemarker/core/_Java8Impl.java b/src/main/java/freemarker/core/_Java8Impl.java
index a25e0f3..e4d14c0 100644
--- a/src/main/java/freemarker/core/_Java8Impl.java
+++ b/src/main/java/freemarker/core/_Java8Impl.java
@@ -21,7 +21,7 @@
 import java.lang.reflect.Method;
 
 /**
- * Used internally only, might changes without notice!
+ * Used internally only, might change without notice!
  * Used for accessing functionality that's only present in Java 8 or later.
  */
 // Compile this against Java 8
diff --git a/src/main/java/freemarker/core/_JavaVersions.java b/src/main/java/freemarker/core/_JavaVersions.java
index 3f07673..5670c36 100644
--- a/src/main/java/freemarker/core/_JavaVersions.java
+++ b/src/main/java/freemarker/core/_JavaVersions.java
@@ -23,7 +23,7 @@
 import freemarker.template.utility.SecurityUtilities;
 
 /**
- * Used internally only, might changes without notice!
+ * Used internally only, might change without notice!
  */
 public final class _JavaVersions {
     
diff --git a/src/main/java/freemarker/core/_MessageUtil.java b/src/main/java/freemarker/core/_MessageUtil.java
index 081835c..69ce60c 100644
--- a/src/main/java/freemarker/core/_MessageUtil.java
+++ b/src/main/java/freemarker/core/_MessageUtil.java
@@ -30,7 +30,7 @@
 import freemarker.template.utility.StringUtil;
 
 /**
- * Used internally only, might changes without notice!
+ * Used internally only, might change without notice!
  * Utilities for creating error messages (and other messages).
  */
 public class _MessageUtil {
diff --git a/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluationException.java b/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluationException.java
index e262721..cc62b0a 100644
--- a/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluationException.java
+++ b/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluationException.java
@@ -22,7 +22,7 @@
 import freemarker.template.utility.StringUtil;
 
 /**
- * Don't use this; used internally by FreeMarker, might changes without notice.
+ * Don't use this; used internally by FreeMarker, might change without notice.
  * Thrown by {@link _ObjectBuilderSettingEvaluator}.
  */
 public class _ObjectBuilderSettingEvaluationException extends Exception {
diff --git a/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluator.java b/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluator.java
index 7e4e18b..0e89e10 100644
--- a/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluator.java
+++ b/src/main/java/freemarker/core/_ObjectBuilderSettingEvaluator.java
@@ -59,7 +59,7 @@
 import freemarker.template.utility.WriteProtectable;
 
 /**
- * Don't use this; used internally by FreeMarker, might changes without notice.
+ * Don't use this; used internally by FreeMarker, might change without notice.
  * 
  * Evaluates object builder expressions used in configuration {@link Properties}.
  * It should be replaced with FTL later (when it was improved to be practical for this), so the syntax should be
@@ -448,7 +448,7 @@
                         }
                     } else {
                         if (resultCoerced) {
-                            // The FTL way (BigDecimal is loseless, and it will be coerced to the target type later):
+                            // The FTL way (BigDecimal is lossless, and it will be coerced to the target type later):
                             return new BigDecimal(numStr);
                         } else {
                             // The Java way (lossy but familiar):
diff --git a/src/main/java/freemarker/core/_SettingEvaluationEnvironment.java b/src/main/java/freemarker/core/_SettingEvaluationEnvironment.java
index 88a4abf..f570021 100644
--- a/src/main/java/freemarker/core/_SettingEvaluationEnvironment.java
+++ b/src/main/java/freemarker/core/_SettingEvaluationEnvironment.java
@@ -25,7 +25,7 @@
 import freemarker.template.Configuration;
 
 /**
- * Don't use this; used internally by FreeMarker, might changes without notice.
+ * Don't use this; used internally by FreeMarker, might change without notice.
  * The runtime environment used during the evaluation of configuration {@link Properties}.
  */
 public class _SettingEvaluationEnvironment {
diff --git a/src/main/java/freemarker/core/_SortedArraySet.java b/src/main/java/freemarker/core/_SortedArraySet.java
index 4016eb8..3cd2fe3 100644
--- a/src/main/java/freemarker/core/_SortedArraySet.java
+++ b/src/main/java/freemarker/core/_SortedArraySet.java
@@ -23,7 +23,7 @@
 import java.util.Collection;
 import java.util.Iterator;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _SortedArraySet<E> extends _UnmodifiableSet<E> {
 
     private final E[] array;
diff --git a/src/main/java/freemarker/core/_UnexpectedTypeErrorExplainerTemplateModel.java b/src/main/java/freemarker/core/_UnexpectedTypeErrorExplainerTemplateModel.java
index 18e8f07..b370a7b 100644
--- a/src/main/java/freemarker/core/_UnexpectedTypeErrorExplainerTemplateModel.java
+++ b/src/main/java/freemarker/core/_UnexpectedTypeErrorExplainerTemplateModel.java
@@ -22,7 +22,7 @@
 import freemarker.template.TemplateModel;
 
 /**
- * Don't use this; used internally by FreeMarker, might changes without notice.
+ * Don't use this; used internally by FreeMarker, might change without notice.
  * 
  * <p>Implemented by {@link TemplateModel}-s that can explain why they don't implement a certain type. 
  * */
diff --git a/src/main/java/freemarker/core/_UnmodifiableCompositeSet.java b/src/main/java/freemarker/core/_UnmodifiableCompositeSet.java
index e3b82ab..8d31129 100644
--- a/src/main/java/freemarker/core/_UnmodifiableCompositeSet.java
+++ b/src/main/java/freemarker/core/_UnmodifiableCompositeSet.java
@@ -22,7 +22,7 @@
 import java.util.Iterator;
 import java.util.Set;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public class _UnmodifiableCompositeSet<E> extends _UnmodifiableSet<E> {
     
     private final Set<E> set1, set2;
diff --git a/src/main/java/freemarker/core/_UnmodifiableSet.java b/src/main/java/freemarker/core/_UnmodifiableSet.java
index 8c98482..2e5ce69 100644
--- a/src/main/java/freemarker/core/_UnmodifiableSet.java
+++ b/src/main/java/freemarker/core/_UnmodifiableSet.java
@@ -21,7 +21,7 @@
 
 import java.util.AbstractSet;
 
-/** Don't use this; used internally by FreeMarker, might changes without notice. */
+/** Don't use this; used internally by FreeMarker, might change without notice. */
 public abstract class _UnmodifiableSet<E> extends AbstractSet<E> {
 
     @Override
diff --git a/src/main/java/freemarker/template/Configuration.java b/src/main/java/freemarker/template/Configuration.java
index 64d3b54..11ac38b 100644
--- a/src/main/java/freemarker/template/Configuration.java
+++ b/src/main/java/freemarker/template/Configuration.java
@@ -3536,7 +3536,7 @@
     @Override
     protected String getCorrectedNameForUnknownSetting(String name) {
         if ("encoding".equals(name) || "charset".equals(name) || "default_charset".equals(name)) {
-            // [2.4] Default might changes to camel-case
+            // [2.4] Default might change to camel-case
             return DEFAULT_ENCODING_KEY;
         }
         if ("defaultCharset".equals(name)) {