Reduce compiler warnings
diff --git a/src/test/java/examples/AnyObjectExampleTest.java b/src/test/java/examples/AnyObjectExampleTest.java
index 8906434..08d5b05 100644
--- a/src/test/java/examples/AnyObjectExampleTest.java
+++ b/src/test/java/examples/AnyObjectExampleTest.java
@@ -33,20 +33,20 @@
         Map<String, Object> object = (Map<String, Object>) yaml.load(doc);

         assertEquals(6, object.size());

         assertEquals("[null, null]", object.get("none").toString());

-        List list1 = (List) object.get("none");

+        List<?> list1 = (List<?>) object.get("none");

         assertEquals(2, list1.size());

         for (Object object2 : list1) {

             assertNull(object2);

         }

         //

         assertEquals("[true, false, true, false]", object.get("bool").toString());

-        assertEquals(4, ((List) object.get("bool")).size());

+        assertEquals(4, ((List<?>) object.get("bool")).size());

         //

         assertEquals(new Integer(42), object.get("int"));

         assertEquals(new Double(3.14159), object.get("float"));

         //

         assertEquals("[LITE, RES_ACID, SUS_DEXT]", object.get("list").toString());

-        List list2 = (List) object.get("list");

+        List<?> list2 = (List<?>) object.get("list");

         assertEquals(3, list2.size());

         for (Object object2 : list2) {

             assertEquals(object2.toString(), object2.toString().toUpperCase());

diff --git a/src/test/java/examples/CustomMapExampleTest.java b/src/test/java/examples/CustomMapExampleTest.java
index 335224c..cea611d 100644
--- a/src/test/java/examples/CustomMapExampleTest.java
+++ b/src/test/java/examples/CustomMapExampleTest.java
@@ -28,7 +28,9 @@
 public class CustomMapExampleTest extends TestCase {

     public void testMap() throws IOException {

         Yaml yaml = new Yaml(new CustomConstructor());

-        Map data = (Map) yaml.load("{2: '222', 1: '111', 3: '333'}");

+        @SuppressWarnings("unchecked")

+        Map<Integer, String> data = (Map<Integer, String>) yaml

+                .load("{2: '222', 1: '111', 3: '333'}");

         assertTrue(data instanceof TreeMap);

         Object[] keys = data.keySet().toArray();

         // must be sorted

diff --git a/src/test/java/examples/LoadExampleTest.java b/src/test/java/examples/LoadExampleTest.java
index 8e273f5..5087c58 100644
--- a/src/test/java/examples/LoadExampleTest.java
+++ b/src/test/java/examples/LoadExampleTest.java
@@ -40,7 +40,8 @@
     public void testLoadFromString() {

         Yaml yaml = new Yaml();

         String document = "hello: 25";

-        Map map = (Map) yaml.load(document);

+        @SuppressWarnings("unchecked")

+        Map<String, Integer> map = (Map<String, Integer>) yaml.load(document);

         assertEquals("{hello=25}", map.toString());

         assertEquals(new Integer(25), map.get("hello"));

     }

diff --git a/src/test/java/examples/SelectiveConstructorTest.java b/src/test/java/examples/SelectiveConstructorTest.java
index 1689dc1..c58ece8 100644
--- a/src/test/java/examples/SelectiveConstructorTest.java
+++ b/src/test/java/examples/SelectiveConstructorTest.java
@@ -40,10 +40,10 @@
         class MyPersistentObjectConstruct extends Constructor.ConstructMapping {

             @Override

             protected Object constructJavaBean2ndStep(MappingNode node, Object object) {

-                Class type = node.getType();

+                Class<?> type = node.getType();

                 if (type.equals(MyPersistentObject.class)) {

                     // create a map

-                    Map map = constructMapping(node);

+                    Map<Object, Object> map = constructMapping(node);

                     String id = (String) map.get("id");

                     return new MyPersistentObject(id, 17);

                 } else {

diff --git a/src/test/java/examples/collections/TypeSafeListNoGerericsTest.java b/src/test/java/examples/collections/TypeSafeListNoGerericsTest.java
index 5f65f5a..4791976 100644
--- a/src/test/java/examples/collections/TypeSafeListNoGerericsTest.java
+++ b/src/test/java/examples/collections/TypeSafeListNoGerericsTest.java
@@ -67,7 +67,7 @@
     }

 

     public static class ListBean {

-        private List children;

+        private List<String> children;

         private String name;

         private List developers;

 

@@ -75,11 +75,11 @@
             name = "Bean123";

         }

 

-        public List getChildren() {

+        public List<String> getChildren() {

             return children;

         }

 

-        public void setChildren(List children) {

+        public void setChildren(List<String> children) {

             this.children = children;

         }

 

diff --git a/src/test/java/examples/collections/TypeSafeMapImplementationsTest.java b/src/test/java/examples/collections/TypeSafeMapImplementationsTest.java
index 9ee6e49..7dc0158 100644
--- a/src/test/java/examples/collections/TypeSafeMapImplementationsTest.java
+++ b/src/test/java/examples/collections/TypeSafeMapImplementationsTest.java
@@ -124,11 +124,13 @@
         // load

         List<Object> list2 = (List<Object>) yaml.load(output);

         assertEquals(3, list2.size());

-        Map map1 = (Map) list.get(0);// it was SortedMap

+        Map<Object, Object> map1 = (Map<Object, Object>) list.get(0);// it was

+                                                                     // SortedMap

         assertEquals(2, map1.size());

         assertEquals("one", map1.get("1"));

         assertEquals("two", map1.get("2"));

-        Map map2 = (Map) list.get(1);// it was Properties

+        Map<Object, Object> map2 = (Map<Object, Object>) list.get(1);// it was

+                                                                     // Properties

         assertEquals(2, map2.size());

         assertEquals("value1", map2.get("key1"));

         assertEquals("value2", map2.get("key2"));

@@ -146,7 +148,9 @@
         String etalon = Util.getLocalResource("examples/map-recursive-1.yaml");

         assertEquals(etalon, output);

         // load with different order

-        Map map1 = (Map) yaml.load(Util.getLocalResource("examples/map-recursive-1_1.yaml"));

+        @SuppressWarnings("unchecked")

+        Map<Object, Object> map1 = (Map<Object, Object>) yaml.load(Util

+                .getLocalResource("examples/map-recursive-1_1.yaml"));

         assertEquals(3, map1.size());

         assertEquals("one", map1.get("1"));

         assertEquals("two", map1.get("2"));

@@ -160,7 +164,7 @@
         Properties props = new Properties();

         props.setProperty("key1", "value1");

         props.setProperty("key2", "value2");

-        Map map = props;

+        Map<Object, Object> map = props;

         map.put("key3", props);

         Yaml yaml = new Yaml();

         String output = yaml.dump(props);

@@ -168,7 +172,7 @@
         String etalon = Util.getLocalResource("examples/map-recursive-2.yaml");

         assertEquals(etalon, output);

         // load

-        Map map2 = (Map) yaml.load(output);

+        Map<Object, Object> map2 = (Map<Object, Object>) yaml.load(output);

         assertEquals(3, map2.size());

         assertEquals("value1", map2.get("key1"));

         assertEquals("value2", map2.get("key2"));

@@ -178,7 +182,8 @@
         Yaml yaml = new Yaml();

         String output = Util.getLocalResource("examples/map-recursive-3.yaml");

         // System.out.println(output);

-        SortedMap map1 = (SortedMap) yaml.load(output);

+        @SuppressWarnings("unchecked")

+        SortedMap<Object, Object> map1 = (SortedMap<Object, Object>) yaml.load(output);

         assertEquals(3, map1.size());

         assertEquals("one", map1.get("1"));

         assertEquals("two", map1.get("2"));

diff --git a/src/test/java/org/pyyaml/PyEmitterTest.java b/src/test/java/org/pyyaml/PyEmitterTest.java
index 4c169a4..6f1ecc2 100644
--- a/src/test/java/org/pyyaml/PyEmitterTest.java
+++ b/src/test/java/org/pyyaml/PyEmitterTest.java
@@ -116,13 +116,12 @@
         }

     }

 

-    @SuppressWarnings("unchecked")

     public void testEmitterStyles() throws IOException {

         File[] canonicalFiles = getStreamsByExtension(".canonical", false);

         assertTrue("No test files found.", canonicalFiles.length > 0);

         File[] dataFiles = getStreamsByExtension(".data", true);

         assertTrue("No test files found.", dataFiles.length > 0);

-        List<File> allFiles = new ArrayList(Arrays.asList(canonicalFiles));

+        List<File> allFiles = new ArrayList<File>(Arrays.asList(canonicalFiles));

         allFiles.addAll(Arrays.asList(dataFiles));

         for (File file : allFiles) {

             try {

diff --git a/src/test/java/org/pyyaml/PyTokensTest.java b/src/test/java/org/pyyaml/PyTokensTest.java
index dc727df..f6ec92c 100644
--- a/src/test/java/org/pyyaml/PyTokensTest.java
+++ b/src/test/java/org/pyyaml/PyTokensTest.java
@@ -56,7 +56,7 @@
 public class PyTokensTest extends PyImportTest {

 

     public void testTokens() throws FileNotFoundException {

-        Map<Class, String> replaces = new HashMap<Class, String>();

+        Map<Class<?>, String> replaces = new HashMap<Class<?>, String>();

         replaces.put(DirectiveToken.class, "%");

         replaces.put(DocumentStartToken.class, "---");

         replaces.put(DocumentEndToken.class, "...");

diff --git a/src/test/java/org/yaml/snakeyaml/Chapter2_2Test.java b/src/test/java/org/yaml/snakeyaml/Chapter2_2Test.java
index 8be20fb..5f277c4 100644
--- a/src/test/java/org/yaml/snakeyaml/Chapter2_2Test.java
+++ b/src/test/java/org/yaml/snakeyaml/Chapter2_2Test.java
@@ -96,18 +96,18 @@
         }

     }

 

-    @SuppressWarnings("unchecked")

     public void testExample_2_12() {

         YamlDocument document = new YamlDocument("example2_12.yaml");

+        @SuppressWarnings("unchecked")

         List<Map<Object, Object>> list = (List<Map<Object, Object>>) document.getNativeData();

         assertEquals(3, list.size());

-        Map map1 = (Map) list.get(0);

+        Map<Object, Object> map1 = (Map<Object, Object>) list.get(0);

         assertEquals(2, map1.size());

         assertEquals("Super Hoop", map1.get("item"));

-        Map map2 = (Map) list.get(1);

+        Map<Object, Object> map2 = (Map<Object, Object>) list.get(1);

         assertEquals(2, map2.size());

         assertEquals("Basketball", map2.get("item"));

-        Map map3 = (Map) list.get(2);

+        Map<Object, Object> map3 = (Map<Object, Object>) list.get(2);

         assertEquals(2, map3.size());

         assertEquals("Big Shoes", map3.get("item"));

     }

diff --git a/src/test/java/org/yaml/snakeyaml/Chapter2_4Test.java b/src/test/java/org/yaml/snakeyaml/Chapter2_4Test.java
index 676e91b..48387a6 100644
--- a/src/test/java/org/yaml/snakeyaml/Chapter2_4Test.java
+++ b/src/test/java/org/yaml/snakeyaml/Chapter2_4Test.java
@@ -174,7 +174,7 @@
         assertEquals(new Integer(65), map.get("Mark McGwire"));

         assertEquals(new Integer(63), map.get("Sammy Sosa"));

         assertEquals(new Integer(58), map.get("Ken Griffy"));

-        List list = new ArrayList();

+        List<String> list = new ArrayList<String>();

         for (String key : map.keySet()) {

             list.add(key);

         }

diff --git a/src/test/java/org/yaml/snakeyaml/Example2_24Test.java b/src/test/java/org/yaml/snakeyaml/Example2_24Test.java
index e6595fa..65eff79 100644
--- a/src/test/java/org/yaml/snakeyaml/Example2_24Test.java
+++ b/src/test/java/org/yaml/snakeyaml/Example2_24Test.java
@@ -64,8 +64,8 @@
             @SuppressWarnings("unchecked")

             public Object construct(Node node) {

                 MappingNode mnode = (MappingNode) node;

-                Map values = (Map) constructMapping(mnode);

-                Circle circle = new Circle((Map) values.get("center"),

+                Map<Object, Object> values = constructMapping(mnode);

+                Circle circle = new Circle((Map<String, Integer>) values.get("center"),

                         (Integer) values.get("radius"));

                 return circle;

             }

@@ -75,8 +75,9 @@
             @SuppressWarnings("unchecked")

             public Object construct(Node node) {

                 MappingNode mnode = (MappingNode) node;

-                Map values = (Map) constructMapping(mnode);

-                Line line = new Line((Map) values.get("start"), (Map) values.get("finish"));

+                Map<Object, Object> values = constructMapping(mnode);

+                Line line = new Line((Map<String, Integer>) values.get("start"),

+                        (Map<String, Integer>) values.get("finish"));

                 return line;

             }

         }

@@ -85,9 +86,9 @@
             @SuppressWarnings("unchecked")

             public Object construct(Node node) {

                 MappingNode mnode = (MappingNode) node;

-                Map values = (Map) constructMapping(mnode);

-                Label label = new Label((Map) values.get("start"), (Integer) values.get("color"),

-                        (String) values.get("text"));

+                Map<Object, Object> values = constructMapping(mnode);

+                Label label = new Label((Map<String, Integer>) values.get("start"),

+                        (Integer) values.get("color"), (String) values.get("text"));

                 return label;

             }

         }

diff --git a/src/test/java/org/yaml/snakeyaml/JavaBeanLoaderTest.java b/src/test/java/org/yaml/snakeyaml/JavaBeanLoaderTest.java
index 7b64053..0484684 100644
--- a/src/test/java/org/yaml/snakeyaml/JavaBeanLoaderTest.java
+++ b/src/test/java/org/yaml/snakeyaml/JavaBeanLoaderTest.java
@@ -67,10 +67,9 @@
         assertEquals("Test me.", parsed.getName());

     }

 

-    @SuppressWarnings("unchecked")

     public void testLoaderNullClass() {

         try {

-            new JavaBeanLoader<Bean>((Class) null);

+            new JavaBeanLoader<Bean>((Class<Bean>) null);

             fail();

         } catch (NullPointerException e) {

             assertEquals("Root type must be provided.", e.getMessage());

diff --git a/src/test/java/org/yaml/snakeyaml/YamlStream.java b/src/test/java/org/yaml/snakeyaml/YamlStream.java
index 2fd080d..76a2326 100644
--- a/src/test/java/org/yaml/snakeyaml/YamlStream.java
+++ b/src/test/java/org/yaml/snakeyaml/YamlStream.java
@@ -57,19 +57,21 @@
         if (nativeData.size() != parsedNativeData.size()) {

             throw new AssertionFailedError("Different size.");

         }

-        Iterator piterator = parsedNativeData.iterator();

-        Iterator niterator = nativeData.iterator();

+        Iterator<Object> piterator = parsedNativeData.iterator();

+        Iterator<Object> niterator = nativeData.iterator();

         while (piterator.hasNext()) {

             Object obj1 = niterator.next();

             Object obj2 = piterator.next();

             if (obj1 instanceof Map) {

-                Map map1 = (Map) obj1;

-                Map map2 = (Map) obj2;

+                @SuppressWarnings("unchecked")

+                Map<Object, Object> map1 = (Map<Object, Object>) obj1;

+                @SuppressWarnings("unchecked")

+                Map<Object, Object> map2 = (Map<Object, Object>) obj2;

                 if (!map1.keySet().equals(map2.keySet())) {

                     throw new AssertionFailedError("Keyset: " + map1.keySet() + "; but was: "

                             + map2.keySet());

                 }

-                for (Iterator iterator = map1.keySet().iterator(); iterator.hasNext();) {

+                for (Iterator<Object> iterator = map1.keySet().iterator(); iterator.hasNext();) {

                     Object key = iterator.next();

                     Object o1 = map1.get(key);

                     Object o2 = map2.get(key);

diff --git a/src/test/java/org/yaml/snakeyaml/constructor/ConstructorSequenceTest.java b/src/test/java/org/yaml/snakeyaml/constructor/ConstructorSequenceTest.java
index 298115f..68d6958 100644
--- a/src/test/java/org/yaml/snakeyaml/constructor/ConstructorSequenceTest.java
+++ b/src/test/java/org/yaml/snakeyaml/constructor/ConstructorSequenceTest.java
@@ -73,7 +73,7 @@
         Resolver resolver = new Resolver();

         Composer composer = new Composer(parser, resolver);

         constructor.setComposer(composer);

-        List result = (List) constructor.getSingleData();

+        List<Object> result = (List<Object>) constructor.getSingleData();

         return result;

     }

 

diff --git a/src/test/java/org/yaml/snakeyaml/emitter/EventConstructor.java b/src/test/java/org/yaml/snakeyaml/emitter/EventConstructor.java
index 2eb6356..e04572c 100644
--- a/src/test/java/org/yaml/snakeyaml/emitter/EventConstructor.java
+++ b/src/test/java/org/yaml/snakeyaml/emitter/EventConstructor.java
@@ -48,9 +48,9 @@
 

         @SuppressWarnings("unchecked")

         public Object construct(Node node) {

-            Map mapping;

+            Map<Object, Object> mapping;

             if (node instanceof ScalarNode) {

-                mapping = new HashMap();

+                mapping = new HashMap<Object, Object>();

             } else {

                 mapping = constructMapping((MappingNode) node);

             }

@@ -64,7 +64,7 @@
                 if (v == null) {

                     v = "";

                 }

-                List implicitList = (List) mapping.get("implicit");

+                List<Boolean> implicitList = (List<Boolean>) mapping.get("implicit");

                 ImplicitTuple implicit;

                 if (implicitList == null) {

                     implicit = new ImplicitTuple(false, true);

diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue100/MergeJavaBeanTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue100/MergeJavaBeanTest.java
index 630f89d..66ecdd8 100644
--- a/src/test/java/org/yaml/snakeyaml/issues/issue100/MergeJavaBeanTest.java
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue100/MergeJavaBeanTest.java
@@ -187,7 +187,7 @@
         assertEquals(2, objects.size());
         // Check first type
         Object first = objects.get(0);
-        Map firstMap = (Map) first;
+        Map<Object, Object> firstMap = (Map<Object, Object>) first;
         // Check first contents
         assertEquals(11, firstMap.get("age"));
         assertEquals("id123", firstMap.get("id"));
diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSetTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSetTest.java
index 7ef1fdf..a24496b 100644
--- a/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSetTest.java
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSetTest.java
@@ -26,10 +26,9 @@
 import org.yaml.snakeyaml.Yaml;
 
 public class RecursiveSetTest extends TestCase {
-    @SuppressWarnings("unchecked")
     public void testDumpException() {
-        Set set1 = new HashSet();
-        Set set2 = new HashSet();
+        Set<Object> set1 = new HashSet<Object>();
+        Set<Object> set2 = new HashSet<Object>();
         set1.add(set2);
         set2.add(set1);
         Yaml yaml = new Yaml();
diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSortedSetTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSortedSetTest.java
index 9a6903b..0417ea3 100644
--- a/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSortedSetTest.java
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue73/RecursiveSortedSetTest.java
@@ -26,9 +26,8 @@
 import org.yaml.snakeyaml.Yaml;
 
 public class RecursiveSortedSetTest extends TestCase {
-    @SuppressWarnings("unchecked")
     public void testDumpException() {
-        SortedSet set = new TreeSet();
+        SortedSet<Object> set = new TreeSet<Object>();
         Bean11 bean = new Bean11();
         bean.setId("ID555");
         bean.setSet(set);
diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue94/ChangeRuntimeClassTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue94/ChangeRuntimeClassTest.java
index e16d47b..b7345bc 100644
--- a/src/test/java/org/yaml/snakeyaml/issues/issue94/ChangeRuntimeClassTest.java
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue94/ChangeRuntimeClassTest.java
@@ -71,16 +71,14 @@
             this.yamlConstructors.put(null, new ConstructProxy());
         }
 
-        @SuppressWarnings("unchecked")
-        public MyConstructor(Class clazz) {
+        public MyConstructor(Class<?> clazz) {
             super(clazz);
             this.yamlConstructors.put(null, new ConstructProxy());
         }
 
         private class ConstructProxy extends AbstractConstruct {
-            @SuppressWarnings("unchecked")
             private Construct getConstructor(Node node) {
-                Class cl = getClassForNode(node);
+                Class<?> cl = getClassForNode(node);
                 if (cl.equals(Entity.class) && true) {
                     // today's temperature is high :)
                     cl = EntityLoadingProxy.class;
diff --git a/src/test/java/org/yaml/snakeyaml/types/AbstractTest.java b/src/test/java/org/yaml/snakeyaml/types/AbstractTest.java
index cb6a19b..06fbc74 100644
--- a/src/test/java/org/yaml/snakeyaml/types/AbstractTest.java
+++ b/src/test/java/org/yaml/snakeyaml/types/AbstractTest.java
@@ -42,7 +42,7 @@
     }

 

     protected Object getMapValue(String data, String key) {

-        Map nativeData = getMap(data);

+        Map<String, Object> nativeData = getMap(data);

         return nativeData.get(key);

     }

 }

diff --git a/src/test/java/org/yaml/snakeyaml/types/MergeTagTest.java b/src/test/java/org/yaml/snakeyaml/types/MergeTagTest.java
index 3318fce..91cab09 100644
--- a/src/test/java/org/yaml/snakeyaml/types/MergeTagTest.java
+++ b/src/test/java/org/yaml/snakeyaml/types/MergeTagTest.java
@@ -30,7 +30,7 @@
     @SuppressWarnings("unchecked")

     public void testMerge() throws IOException {

         YamlDocument document = new YamlDocument("types/merge.yaml");

-        List list = (List) document.getNativeData();

+        List<Object> list = (List<Object>) document.getNativeData();

         assertEquals(8, list.size());

         Map<Object, Object> center = (Map<Object, Object>) list.get(0);

         assertEquals(2, center.size());

diff --git a/src/test/java/org/yaml/snakeyaml/types/ValueTagTest.java b/src/test/java/org/yaml/snakeyaml/types/ValueTagTest.java
index 922980a..522e497 100644
--- a/src/test/java/org/yaml/snakeyaml/types/ValueTagTest.java
+++ b/src/test/java/org/yaml/snakeyaml/types/ValueTagTest.java
@@ -39,7 +39,7 @@
         InputStream input = YamlDocument.class.getClassLoader().getResourceAsStream(

                 YamlDocument.ROOT + "types/value.yaml");

         Yaml yaml = new Yaml();

-        Iterator iter = (Iterator) yaml.loadAll(input).iterator();

+        Iterator<Object> iter = (Iterator<Object>) yaml.loadAll(input).iterator();

         Map<String, List<String>> oldSchema = (Map<String, List<String>>) iter.next();

         assertEquals(1, oldSchema.size());

         List<String> list = oldSchema.get("link with");