public void Word0()
        {
#if !DEBUG
        Assert.Multiple(() => {
#endif
            var expected = new Dictionary<string, int> { { "a", 0 }, { "b", 0 } };
            var actual = _object.Word0(new[] { "a", "b", "a", "b" });
            CollectionAssert.AreEquivalent(expected, actual);

            expected = new Dictionary<string, int> { { "a", 0 }, { "b", 0 }, { "c", 0 } };
            actual = _object.Word0(new[] { "a", "b", "a", "c", "b" });
            CollectionAssert.AreEquivalent(expected, actual);

            expected = new Dictionary<string, int> { { "a", 0 }, { "b", 0 }, { "c", 0 } };
            actual = _object.Word0(new[] { "c", "b", "a" });
            CollectionAssert.AreEquivalent(expected, actual);

            expected = new Dictionary<string, int> { { "c", 0 } };
            actual = _object.Word0(new[] { "c", "c", "c", "c" });
            CollectionAssert.AreEquivalent(expected, actual);

            expected = new Dictionary<string, int>();
            actual = _object.Word0(new string[0]);
            CollectionAssert.AreEquivalent(expected, actual);
#if !DEBUG
        });
#endif
        }