package dfa;

import org.jetbrains.annotations.NotNull;

import java.util.ArrayList;
import java.util.List;

public class InstanceofFromPrimitiveToPrimitive {
    public static void main(String[] args) {
        System.out.println("testBoolean");
        testBoolean();
        System.out.println("testInt");
        testInt();
        System.out.println("testChar");
        testChar();
        System.out.println("testByte");
        testByte();
        System.out.println("testShort");
        testShort();
        System.out.println("testLong");
        testLong();
        System.out.println("testFloat");
        testFloat();
        System.out.println("testDouble");
        testDouble();
        System.out.println("testWithInference");
        testWithInference(new ArrayList<>());
    }

    private static void testWithInference(List<@NotNull Short> list) {
        if(<warning descr="Condition 'list.get(0) instanceof int' is always 'true'">list.get(0) instanceof int</warning>) { //redundant
        }
    }

    private static void testDouble() {
        System.out.println(0);
        double o = 0;
        if (<warning descr="Condition 'o instanceof int t' is always 'true'">o instanceof int t</warning>) { //true
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'true'">o instanceof char t</warning>) { //true
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'true'">o instanceof byte t</warning>) { //true
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'true'">o instanceof short t</warning>) { //true
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'true'">o instanceof long t</warning>) { //true
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("Float.MIN_VALUE");
        o = Float.MIN_VALUE;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("Float.MAX_VALUE");
        o = Float.MAX_VALUE;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("Double.MIN_VALUE");
        o = Double.MIN_VALUE;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'false'">o instanceof float t</warning>) { //false
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("Double.MAX_VALUE");
        o = Double.MAX_VALUE;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'false'">o instanceof float t</warning>) { //false
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("0x1p63");
        o = 0x1p63;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("0x1p5");
        o = 0x1p5;
        if (<warning descr="Condition 'o instanceof int t' is always 'true'">o instanceof int t</warning>) { //true
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'true'">o instanceof char t</warning>) { //true
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'true'">o instanceof byte t</warning>) { //true
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'true'">o instanceof short t</warning>) { //true
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'true'">o instanceof long t</warning>) { //true
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("0x1p62");
        o = 0x1p62;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'true'">o instanceof long t</warning>) { //true
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double' is always 'true'">o instanceof double</warning>) { //true
            System.out.println("double");
        }


        System.out.println("nan");
        o = Double.NaN;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("float positive inf");
        o = Float.POSITIVE_INFINITY;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("float negative inf");
        o = Float.NEGATIVE_INFINITY;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("double positive inf");
        o = Double.POSITIVE_INFINITY;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("double negative inf");
        o = Double.NEGATIVE_INFINITY;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("-0.0");
        o = -0.0f;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) {//false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) {//false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) {//false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) {//false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }
    }

    private static void testFloat() {
        System.out.println(0);
        float o = 0;
        if (<warning descr="Condition 'o instanceof int t' is always 'true'">o instanceof int t</warning>) { //true
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'true'">o instanceof char t</warning>) { //true
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'true'">o instanceof byte t</warning>) { //true
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'true'">o instanceof short t</warning>) { //true
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'true'">o instanceof long t</warning>) { //true
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("Float.MIN_VALUE");
        o = Float.MIN_VALUE;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("Float.MAX_VALUE");
        o = Float.MAX_VALUE;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("0x1p63f");
        o = 0x1p63f;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("0x1p5f");
        o = 0x1p5f;
        if (<warning descr="Condition 'o instanceof int t' is always 'true'">o instanceof int t</warning>) { //true
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'true'">o instanceof char t</warning>) { //true
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'true'">o instanceof byte t</warning>) { //true
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'true'">o instanceof short t</warning>) { //true
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'true'">o instanceof long t</warning>) { //true
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

        System.out.println("0x1p62f");
        o = 0x1p62f;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'true'">o instanceof long t</warning>) { //true
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("nan");
        o = Float.NaN;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("positive inf");
        o = Float.POSITIVE_INFINITY;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("negative inf");
        o = Float.NEGATIVE_INFINITY;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) { //false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) { //false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) { //false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) { //false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }


        System.out.println("-0.0");
        o = -0.0f;
        if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) {//false
            System.out.println("int" + t);
        }
        if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) {//false
            System.out.println("char" + t);
        }
        if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) {//false
            System.out.println("byte" + t);
        }
        if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) {//false
            System.out.println("short" + t);
        }
        if (<warning descr="Condition 'o instanceof long t' is always 'false'">o instanceof long t</warning>) { //false
            System.out.println("long" + t);
        }
        if (<warning descr="Condition 'o instanceof float t' is always 'true'">o instanceof float t</warning>) { //true
            System.out.println("float" + t);
        }
        if (<warning descr="Condition 'o instanceof double t' is always 'true'">o instanceof double t</warning>) { //true
            System.out.println("double" + t);
        }

      System.out.println("0x1p31f");
      o = 0x1p31f;
      if (<warning descr="Condition 'o instanceof int t' is always 'false'">o instanceof int t</warning>) {//false
        System.out.println("int" + t);
      }
      if (<warning descr="Condition 'o instanceof char t' is always 'false'">o instanceof char t</warning>) {//false
        System.out.println("char" + t);
      }
      if (<warning descr="Condition 'o instanceof byte t' is always 'false'">o instanceof byte t</warning>) {//false
        System.out.println("byte" + t);
      }
      if (<warning descr="Condition 'o instanceof short t' is always 'false'">o instanceof short t</warning>) {//false
