// Path: src/org/joml/jre/java/io/Externalizable.java
// public interface Externalizable extends java.io.Serializable {
//     void writeExternal(ObjectOutput out) throws IOException;
//     void readExternal(ObjectInput in) throws IOException, ClassNotFoundException;
// }
// 
// Path: src/org/joml/jre/java/io/ObjectInput.java
// public interface ObjectInput extends DataOutput {
// 
//     double readDouble() throws IOException;
//     float readFloat() throws IOException;
//     int readInt() throws IOException;
// 
// }
// 
// Path: src/org/joml/jre/java/io/ObjectOutput.java
// public interface ObjectOutput extends DataOutput {
//     void writeObject(Object obj);
// }
// 
// Path: src/org/joml/jre/java/text/DecimalFormat.java
// public class DecimalFormat extends NumberFormat {
// 
//     public DecimalFormat() {
//     }
//     public DecimalFormat(String pattern) {
//     }
//     public DecimalFormat (String pattern, DecimalFormatSymbols symbols) {
//     }
// 
//     public StringBuffer format(double number, StringBuffer toAppendTo, FieldPosition pos) {
//         return null;
//     }
//     public StringBuffer format(long number, StringBuffer toAppendTo, FieldPosition pos) {
//         return null;
//     }
//     public Number parse(String source, ParsePosition parsePosition) {
//         return null;
//     }
//     public StringBuffer format(Object obj, StringBuffer toAppendTo, FieldPosition pos) {
//         return null;
//     }
//     public Object parseObject(String source, ParsePosition pos) {
//         return null;
//     }
// 
// }
// 
// Path: src/org/joml/jre/java/text/NumberFormat.java
// public abstract class NumberFormat extends Format {
//     public final String format(double number) {
//         return Double.toString(number);
//     }
//     public final String format(long number) {
//         return Long.toString(number);
//     }
// }


import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import com.google.gwt.typedarrays.shared.Float32Array;
import java.nio.ByteBuffer;
import java.nio.FloatBuffer;
    public Vector2f transform(Vector2f v) {
        return v.mul(this);
    }

    public Vector2f transform(Vector2fc v, Vector2f dest) {
        v.mul(this, dest);
        return dest;
    }

    public Vector2f transform(float x, float y, Vector2f dest) {
        dest.set(m00 * x + m10 * y,
                 m01 * x + m11 * y);
        return dest;
    }

    public Vector2f transformTranspose(Vector2f v) {
        return v.mulTranspose(this);
    }

    public Vector2f transformTranspose(Vector2fc v, Vector2f dest) {
        v.mulTranspose(this, dest);
        return dest;
    }

    public Vector2f transformTranspose(float x, float y, Vector2f dest) {
        dest.set(m00 * x + m01 * y,
                 m10 * x + m11 * y);
        return dest;
    }

// Path: src/org/joml/jre/java/io/Externalizable.java
// public interface Externalizable extends java.io.Serializable {
//     void writeExternal(ObjectOutput out) throws IOException;
//     void readExternal(ObjectInput in) throws IOException, ClassNotFoundException;
// }
// 
// Path: src/org/joml/jre/java/io/ObjectInput.java
// public interface ObjectInput extends DataOutput {
// 
//     double readDouble() throws IOException;
//     float readFloat() throws IOException;
//     int readInt() throws IOException;
// 
// }
// 
// Path: src/org/joml/jre/java/io/ObjectOutput.java
// public interface ObjectOutput extends DataOutput {
//     void writeObject(Object obj);
// }
// 
// Path: src/org/joml/jre/java/text/DecimalFormat.java
// public class DecimalFormat extends NumberFormat {
// 
//     public DecimalFormat() {
//     }
//     public DecimalFormat(String pattern) {
//     }
//     public DecimalFormat (String pattern, DecimalFormatSymbols symbols) {
//     }
// 
//     public StringBuffer format(double number, StringBuffer toAppendTo, FieldPosition pos) {
//         return null;
//     }
//     public StringBuffer format(long number, StringBuffer toAppendTo, FieldPosition pos) {
//         return null;
//     }
//     public Number parse(String source, ParsePosition parsePosition) {
//         return null;
//     }
//     public StringBuffer format(Object obj, StringBuffer toAppendTo, FieldPosition pos) {
//         return null;
//     }
//     public Object parseObject(String source, ParsePosition pos) {
//         return null;
//     }
// 
// }
// 
// Path: src/org/joml/jre/java/text/NumberFormat.java
// public abstract class NumberFormat extends Format {
//     public final String format(double number) {
//         return Double.toString(number);
//     }
//     public final String format(long number) {
//         return Long.toString(number);
//     }
// }


// Path: src/org/joml/Matrix2f.java
import java.io.Externalizable;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectOutput;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import com.google.gwt.typedarrays.shared.Float32Array;
import java.nio.ByteBuffer;
import java.nio.FloatBuffer;

    public Vector2f transform(Vector2f v) {
        return v.mul(this);
    }

    public Vector2f transform(Vector2fc v, Vector2f dest) {
        v.mul(this, dest);
        return dest;
    }

    public Vector2f transform(float x, float y, Vector2f dest) {
        dest.set(m00 * x + m10 * y,
                 m01 * x + m11 * y);
        return dest;
    }

    public Vector2f transformTranspose(Vector2f v) {
        return v.mulTranspose(this);
    }

    public Vector2f transformTranspose(Vector2fc v, Vector2f dest) {
        v.mulTranspose(this, dest);
        return dest;
    }

    public Vector2f transformTranspose(float x, float y, Vector2f dest) {
        dest.set(m00 * x + m01 * y,
                 m10 * x + m11 * y);
        return dest;
    }

    public void writeExternal(ObjectOutput out) throws IOException {