 	}
 
     public static func < (lhs: Size, rhs: Size) -> Bool {
-        return (lhs.width * lhs.height) < (rhs.width * rhs.height)
+        return lhs.width < rhs.width && lhs.height < rhs.height
     }
 
     public static func == (lhs: Size, rhs: Size) -> Bool {


	public func get(pixel: Point) -> Color {
		let color = gdImageGetTrueColorPixel(internalImage, Int32(pixel.x), Int32(pixel.y))
        return Color(hex: Int(color), leadingAlpha: true)
	}

	public func strokeEllipse(center: Point, size: Size, color: Color) {


    /// Sanitizes given hexadecimal color string (strips # and forms proper length).
    ///
    /// - Parameters:
    ///   - string: The hexadecimal color string to sanitize
    ///   - leadingAlpha: Indicate whether given and returning string should be treated as ARGB (`true`) or RGBA (`false`)
    /// - Returns: The sanitized hexadecimal color string
    /// - Throws: `.invalidColor` if given string is not of proper length
    private static func sanitize(hex string: String, leadingAlpha: Bool) throws -> String {
