 // CGGeometry
 //===----------------------------------------------------------------------===//
 
-public extension CGPoint : Equatable {
+public extension CGPoint {
   static var zeroPoint: CGPoint { get { return CGPoint(x: 0, y: 0) } }
 
   init() {

  }
}

public func == (lhs: CGPoint, rhs: CGPoint) -> Bool {
  return lhs.x == rhs.x  &&  lhs.y == rhs.y
}


public extension CGSize : Equatable {
  static var zeroSize: CGSize { return CGSize(width: 0, height: 0) }

  init() {

  }
}

extension CGVector : Equatable {}
public func == (lhs: CGVector, rhs: CGVector) -> Bool {
  return lhs.dx == rhs.dx  &&  lhs.dy == rhs.dy
}


public extension CGRect {
  static var zeroRect:     CGRect {
    return CGRect(x: 0, y: 0, width: 0, height: 0) 
  }
  static var nullRect:     CGRect { get { return CGRectNull } }
