Index: Include/Classes/System/Drawing/Color.ab
===================================================================
--- Include/Classes/System/Drawing/Color.ab	(revision 166)
+++ Include/Classes/System/Drawing/Color.ab	(revision 212)
@@ -6,12 +6,4 @@
 #include <Classes/System/Math.ab>
 #include <Classes/System/Drawing/Imaging/misc.ab>
-
-Const Enum ColorChannelFlags
-	ColorChannelFlagsC = 0
-	ColorChannelFlagsM
-	ColorChannelFlagsY
-	ColorChannelFlagsK
-	ColorChannelFlagsLast
-End Enum
 
 Class Color
@@ -36,9 +28,9 @@
 		argb = newArgb
 	End Sub
-
+/*
 	Sub Operator =(c As Color)
 		argb = c.argb
 	End Sub
-
+*/
 	Function Operator ==(c As Color) As Boolean
 		Return Equals(c)
Index: Include/Classes/System/Drawing/Font.ab
===================================================================
--- Include/Classes/System/Drawing/Font.ab	(revision 166)
+++ Include/Classes/System/Drawing/Font.ab	(revision 212)
@@ -46,9 +46,9 @@
 	End Sub
 
-	Sub Font(/*IN const*/ ByRef family As FontFamily, /*IN*/ emSize As Single)
+	Sub Font(/*IN const*/ family As FontFamily, /*IN*/ emSize As Single)
 		Font(family, emSize, FontStyleRegular, UnitPoint)
 	End Sub
 
-	Sub Font(/*IN const*/ ByRef family As FontFamily,
+	Sub Font(/*IN const*/ family As FontFamily,
 		/*IN*/ emSize As Single, /*IN*/ style As Long)
 
@@ -56,5 +56,5 @@
 	End Sub
 
-	Sub Font(/*IN const*/ ByRef family As FontFamily, /*IN*/ emSize As Single,
+	Sub Font(/*IN const*/ family As FontFamily, /*IN*/ emSize As Single,
 		/*IN*/ style As Long, /*IN*/ unit As GraphicsUnit)
 
@@ -129,5 +129,5 @@
 	Sub Font(/*IN const*/ familyName As String, /*IN*/ emSize As Single,
 		/*IN*/ style As Long, /*IN*/ unit As GraphicsUnit,
-		/*IN const*/ ByRef fontCollection As FontCollection)
+		/*IN const*/ fontCollection As FontCollection)
 #ifdef __STRING_IS_NOT_UNICODE
 		Dim oldAlloc = _System_AllocForConvertedString
@@ -142,5 +142,5 @@
 	End Sub
 
-	Const Function GetLogFontA(/*IN const*/ ByRef g As Graphics, /*OUT*/ ByRef lf As LOGFONTA) As Status
+	Const Function GetLogFontA(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTA) As Status
 		Dim nativeGraphics As *GpGraphics
 		If VarPtr(g) <> 0 Then
@@ -150,5 +150,5 @@
 	End Function
 
-	Const Function GetLogFontW(/*IN const*/ ByRef g As Graphics, /*OUT*/ ByRef lf As LOGFONTW) As Status
+	Const Function GetLogFontW(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTW) As Status
 		Dim nativeGraphics As *GpGraphics
 		If VarPtr(g) <> 0 Then
@@ -158,5 +158,5 @@
 	End Function
 
-	Const Function GetLogFont(/*IN const*/ ByRef g As Graphics, /*OUT*/ ByRef lf As LOGFONTA) As Status
+	Const Function GetLogFont(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONT) As Status
 		Dim nativeGraphics As *GpGraphics
 		If VarPtr(g) <> 0 Then
@@ -170,5 +170,5 @@
 	End Function
 
-	Const Function Clone() As *Font
+	Const Function Clone() As Font
 		Dim cloneFont = 0 As *GpFont
 		SetStatus(GdipCloneFont(nativeFont, cloneFont))
@@ -210,5 +210,5 @@
 	End Function
 
-	Const Function GetHeight(/*IN const*/ ByRef g As Graphics) As Single
+	Const Function GetHeight(/*IN const*/ g As Graphics) As Single
 		Dim nativeGraphics As *GpGraphics
 		If VarPtr(g) <> 0 Then
@@ -311,14 +311,10 @@
 	End Sub
 
-	Const Sub ToLogFont(ByRef lf As LOGFONT, ByRef g As Graphics)
+	Const Sub ToLogFont(ByRef lf As LOGFONT, g As Graphics)
 		GetLogFont(g, lf)
 	End Sub
-
 
 Private
 '	Sub Font(ByRef f As Font)
-	Sub Operator =(ByRef f As Font)
-		Debug
-	End Sub
 
 Protected
Index: Include/Classes/System/Drawing/Graphics.ab
===================================================================
--- Include/Classes/System/Drawing/Graphics.ab	(revision 166)
+++ Include/Classes/System/Drawing/Graphics.ab	(revision 212)
@@ -37,10 +37,10 @@
 	'=========================================================================
 	Const Function Clip() As Region
-		Dim r As Regino
+		Dim r As Region
 		GetClip(r)
 		Return r
 	End Function
 
-	Sub Clip(ByRef region As /*Const*/ Region)
+	Sub Clip(region As /*Const*/ Region)
 		SetClip(region, CombineMode.Replace)
 	End Sub
@@ -172,5 +172,5 @@
 	End Function
 
-	Sub Transform(ByRef matrix As Matrix)
+	Sub Transform(matrix As Matrix)
 		SetTransform(matirx)
 	End Sub
@@ -185,26 +185,26 @@
 	' Methods
 	'=========================================================================
-	Static Function FromHDC(hdc As HDC) As *Graphics
+	Static Function FromHDC(hdc As HDC) As Graphics
 		Return New Graphics(hdc)
 	End Function
 
-	Static Function FromHDC(hdc As HDC, hdevice As HANDLE) As *Graphics
+	Static Function FromHDC(hdc As HDC, hdevice As HANDLE) As Graphics
 		Return New Graphics(hdc, hdevice)
 	End Function
 
-	Static Function FromHWND(hwnd As HWND) As *Graphics
+	Static Function FromHWND(hwnd As HWND) As Graphics
 		Return New Graphics(hwnd, FALSE)
 	End Function
 
-	Static Function FromHWND(hwnd As DWord, icm As BOOL) As *Graphics
+	Static Function FromHWND(hwnd As DWord, icm As BOOL) As Graphics
 		Return New Graphics(hwnd, icm)
 	End Function
 
-	Static Function FromImage(image As *Image) As *Graphics
+	Static Function FromImage(image As Image) As Graphics
 		Return New Graphics(image)
 	End Function
 
 	Sub Graphics(hdc As HDC)
-		Dim graphics = 0 As *GpGraphics
+		Dim graphics = 0 As GpGraphics
 		lastResult = GdipCreateFromHDC(hdc, graphics)
 		SetNativeGraphics(graphics)
@@ -233,5 +233,5 @@
 	End Sub
 
-	Sub Graphics(image As *Image)
+	Sub Graphics(image As Image)
 		Dim graphics = 0 As *GpGraphics
 		If (image != 0)
@@ -277,5 +277,5 @@
 	End Function
 
-	Const Function GetRenderingOrigin(ByRef x As Long, ByRef y As Long) As Status
+	Const Function GetRenderingOrigin(x As Long, y As Long) As Status
 		Return SetStatus(GdipGetRenderingOrigin(nativeGraphics, x, y))
 	End Function
@@ -355,5 +355,5 @@
 	'------------------------------------------------------------------------
 
-	Function SetTransform(ByRef matrix As /*Const*/ *Matrix) As Status
+	Function SetTransform(matrix As /*Const*/ *Matrix) As Status
 		Return SetStatus(GdipSetWorldTransform(nativeGraphics, matrix->nativeMatrix))
 	End Function
@@ -363,9 +363,9 @@
 	End Function
 
-	Function MultiplyTransform(ByRef matrix As /*Const*/ Matrix) As Status
+	Function MultiplyTransform(matrix As /*Const*/ Matrix) As Status
 		Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, MatrixOrder.Prepend))
 	End Function
 
-	Function MultiplyTransform(ByRef matrix As /*Const*/ Matrix, order As MatrixOrder) As Status
+	Function MultiplyTransform(matrix As /*Const*/ Matrix, order As MatrixOrder) As Status
 		Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, order))
 	End Function
@@ -395,5 +395,5 @@
 	End Function
 
-	Const Function GetTransform(ByRef matrix As Matrix) As Status
+	Const Function GetTransform(matrix As Matrix) As Status
 		Return SetStatus(GdipGetWorldTransform(nativeGraphics, matrix->nativeMatrix))
 	End Function
@@ -411,5 +411,5 @@
 	'------------------------------------------------------------------------
 
-	Const Function GetNearestColor(ByRef color As Color) As Status
+	Const Function GetNearestColor(color As Color) As Status
 		Dim argb = color->Value
 		Dim status = SetStatus(GdipGetNearestColor(nativeGraphics, argb))
@@ -418,294 +418,294 @@
 	End Function
 
-	Function DrawLine(ByRef pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single) As Status
+	Function DrawLine(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single) As Status
 		Return SetStatus(GdipDrawLine(nativeGraphics, pen->nativePen, x1, y1, x2, y2))
 	End Function
 
-	Function DrawLine(ByRef pen As /*Const*/ Pen, ByRef pt1 As /*Const*/ PointF, ByRef pt2 As /*Const*/ PointF) As Status
+	Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF) As Status
 		Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y)
 	End Function
 
-	Function DrawLines(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
+	Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
 		Return SetStatus(GdipDrawLines(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawLine(ByRef pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long) As Status
+	Function DrawLine(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long) As Status
 		Return SetStatus(GdipDrawLineI(nativeGraphics, pen->nativePen, x1, y1, x2, y2))
 	End Function
 
-	Function DrawLine(ByRef pen As /*Const*/ Pen, ByRef pt1 As /*Const*/ Point, ByRef pt2 As /*Const*/ Point) As Status
+	Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point) As Status
 		Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y)
 	End Function
 
-	Function DrawLines(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
+	Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
 		Return SetStatus(GdipDrawLinesI(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawArc(ByRef pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawArc(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
 		Return SetStatus(GdipDrawArc(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
 	End Function
 
-	Function DrawArc(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
 		Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
 	End Function
 
-	Function DrawArc(ByRef pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawArc(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
 		Return SetStatus(GdipDrawArcI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
 	End Function
 
-	Function DrawArc(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
 		Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
 	End Function
 
-	Function DrawBezier(ByRef pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single, x3 As Single, y3 As Single, x4 As Single, y4 As Single) As Status
+	Function DrawBezier(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single, x3 As Single, y3 As Single, x4 As Single, y4 As Single) As Status
 		Return SetStatus(GdipDrawBezier(nativeGraphics, pen->nativePen, x1, y1,x2, y2, x3, y3, x4, y4))
 	End Function
 
-	Function DrawBezier(ByRef pen As /*Const*/ Pen, ByRef pt1 As /*Const*/ PointF, ByRef pt2 As /*Const*/ PointF, ByRef pt3 As /*Const*/ PointF, ByRef pt4 As /*Const*/ PointF) As Status
+	Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF, pt3 As /*Const*/ PointF, pt4 As /*Const*/ PointF) As Status
 		Return DrawBezier(pen, pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y)
 	End Function
 
-	Function DrawBeziers(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
+	Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
 		Return SetStatus(GdipDrawBeziers(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawBezier(ByRef pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long, x3 As Long, y3 As Long, x4 As Long, y4 As Long) As Status
+	Function DrawBezier(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long, x3 As Long, y3 As Long, x4 As Long, y4 As Long) As Status
 		Return SetStatus(GdipDrawBezierI(nativeGraphics, pen->nativePen, x1, y1, x2, y2, x3, y3, x4, y4))
 	End Function
 
-	Function DrawBezier(ByRef pen As /*Const*/ Pen, ByRef pt1 As /*Const*/ Point, ByRef pt2 As /*Const*/ Point, ByRef pt3 As /*Const*/ Point, ByRef pt4 As /*Const*/ Point) As Status
+	Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point, pt3 As /*Const*/ Point, pt4 As /*Const*/ Point) As Status
 		Return DrawBezier(pen pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y)
 	End Function
 
-	Function DrawBeziers(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
+	Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
 		Return SetStatus(GdipDrawBeziersI(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawRectangle(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ RectangleF) As Status
+	Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status
 		Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function DrawRectangle(ByRef pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
+	Function DrawRectangle(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
 		Return SetStatus(GdipDrawRectangle(nativeGraphics, pen->nativePen, x, y, width, height))
 	End Function
 
-	Function DrawRectangles(ByRef pen As /*Const*/ Pen, rects As /*Const*/ *RectangleF, count As Long) As Status
+	Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *RectangleF, count As Long) As Status
 		Return SetStatus(GdipDrawRectangles(nativeGraphics, pen->nativePen, rects, count))
 	End Function
 
-	Function DrawRectangle(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ Rectangle) As Status
+	Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status
 		Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function DrawRectangle(ByRef pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
+	Function DrawRectangle(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
 		Return SetStatus(GdipDrawRectangleI(nativeGraphics, pen->nativePen, x, y, width, height))
 	End Function
 
-	Function DrawRectangles(ByRef pen As /*Const*/ Pen, rects As /*Const*/ *Rectangle,  count As Long) As Status
+	Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *Rectangle,  count As Long) As Status
 		Return SetStatus(GdipDrawRectanglesI(nativeGraphics, pen->nativePen, rects, count))
 	End Function
 
-	Function DrawEllipse(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ RectangleF) As Status
+	Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status
 		Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function DrawEllipse(ByRef pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
+	Function DrawEllipse(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
 		Return SetStatus(GdipDrawEllipse(nativeGraphics, pen->nativePen, x, y, width, height))
 	End Function
 
-	Function DrawEllipse(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ Rectangle) As Status
+	Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status
 		Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function DrawEllipse(ByRef pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
+	Function DrawEllipse(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
 		Return SetStatus(GdipDrawEllipseI(nativeGraphics, pen->nativePen, x, y, width, height))
 	End Function
 
-	Function DrawPie(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
 		Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
 	End Function
 
-	Function DrawPie(ByRef pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawPie(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
 		Return SetStatus(GdipDrawPie(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
 	End Function
 
-	Function DrawPie(ByRef pen As /*Const*/ Pen, ByRef rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
 		Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
 	End Function
 
-	Function DrawPie(ByRef pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
+	Function DrawPie(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
 		Return SetStatus(GdipDrawPieI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
 	End Function
 
-	Function DrawPolygon(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
+	Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
 		Return SetStatus(GdipDrawPolygon(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawPolygon(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
+	Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
 		Return SetStatus(GdipDrawPolygonI(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawPath(ByRef pen As /*Const*/ Pen, ByRef path As /*Const*/ GraphicsPath) As Status
+	Function DrawPath(pen As /*Const*/ Pen, path As /*Const*/ GraphicsPath) As Status
 		Return SetStatus(GdipDrawPath(nativeGraphics, pen->nativePen, path->nativePath))
 '		Return SetStatus(GdipDrawPath(nativeGraphics, pen ? pen->nativePen : NULL, path ? path->nativePath : NULL))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
 		Return SetStatus(GdipDrawCurve(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
 		Return SetStatus(GdipDrawCurve2(nativeGraphics, pen->nativePen, points,count, tension))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long) As Status
 		Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, 0.5))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
 		Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, tension))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
 		Return SetStatus(GdipDrawCurveI(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
 		Return SetStatus(GdipDrawCurve2I(nativeGraphics, pen->nativePen, points, count, tension))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long) As Status
 		Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, 0.5))
 	End Function
 
-	Function DrawCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
+	Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
 		Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, tension))
 	End Function
 
-	Function DrawClosedCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
+	Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
 		Return SetStatus(GdipDrawClosedCurve(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawClosedCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
+	Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
 		Return SetStatus(GdipDrawClosedCurve2(nativeGraphics, pen->nativePen, points, count, tension))
 	End Function
 
-	Function DrawClosedCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
+	Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
 		Return SetStatus(GdipDrawClosedCurveI(nativeGraphics, pen->nativePen, points, count))
 	End Function
 
-	Function DrawClosedCurve(ByRef pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
+	Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
 		Return SetStatus(GdipDrawClosedCurve2I(nativeGraphics, pen->nativePen, points, count, tension))
 	End Function
 
-	Function Clear(ByRef color As /*Const*/ Color) As Status
+	Function Clear(color As /*Const*/ Color) As Status
 		Return SetStatus(GdipGraphicsClear(nativeGraphics, color.Value))
 	End Function
 
-	Function FillRectangle(ByRef brush As /*Const*/ Brush, ByRef rect As /*Const*/ RectangleF) As Status
+	Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status
 		Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function FillRectangle(ByRef brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
+	Function FillRectangle(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
 		Return SetStatus(GdipFillRectangle(nativeGraphics, brush->nativeBrush, x, y, width, height))
 	End Function
 
-	Function FillRectangles(ByRef brush As /*Const*/ Brush, rects As /*Const*/ *RectangleF, count As Long) As Status
+	Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *RectangleF, count As Long) As Status
 		Return SetStatus(GdipFillRectangles(nativeGraphics,brush->nativeBrush,rects, count))
 	End Function
 
-	Function FillRectangle(ByRef brush As /*Const*/ Brush, ByRef rect As /*Const*/ Rectangle) As Status
+	Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status
 		Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function FillRectangle(ByRef brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
+	Function FillRectangle(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
 		Return SetStatus(GdipFillRectangleI(nativeGraphics, brush->nativeBrush, x, y, width, height))
 	End Function
 
-	Function FillRectangles(ByRef brush As /*Const*/ Brush, rects As /*Const*/ *Rectangle, count As Long) As Status
+	Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *Rectangle, count As Long) As Status
 		Return SetStatus(GdipFillRectanglesI(nativeGraphics, brush->nativeBrush, rects, count))
 	End Function
 
-	Function FillPolygon(ByRef brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
+	Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
 		Return FillPolygon(brush, points, count, FillModeAlternate)
 	End Function
 
-	Function FillPolygon(ByRef brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
+	Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
 		Return SetStatus(GdipFillPolygon(nativeGraphics, brush->nativeBrush, points, count, fillMode))
 	End Function
 
-	Function FillPolygon(ByRef brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
+	Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
 		Return FillPolygon(brush, points, count, FillModeAlternate)
 	End Function
 
-	Function FillPolygon(ByRef brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
+	Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
 		Return SetStatus(GdipFillPolygonI(nativeGraphics, brush->nativeBrush, points, count, fillMode))
 	End Function
 
-	Function FillEllipse(ByRef brush As /*Const*/ Brush, ByRef rect As /*Const*/ RectangleF) As Status
+	Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status
 		Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function FillEllipse(ByRef brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
+	Function FillEllipse(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
 		Return SetStatus(GdipFillEllipse(nativeGraphics, brush->nativeBrush, x, y, width, height))
 	End Function
 
-	Function FillEllipse(ByRef brush As /*Const*/ Brush, ByRef rect As /*Const*/ Rectangle) As Status
+	Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status
 		Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function FillEllipse(ByRef brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
+	Function FillEllipse(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
 		Return SetStatus(GdipFillEllipseI(nativeGraphics, brush->nativeBrush, x, y, width, height))
 	End Function
 
-	Function FillPie(ByRef brush As /*Const*/ Brush, ByRef rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
+	Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
 		Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
 	End Function
 
-	Function FillPie(ByRef brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
+	Function FillPie(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
 		Return SetStatus(GdipFillPie(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle))
 	End Function
 
-	Function FillPie(ByRef brush As /*Const*/ Brush, ByRef rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
+	Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
 		Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
 	End Function
 
-	Function FillPie(ByRef brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
+	Function FillPie(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
 		Return SetStatus(GdipFillPieI(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle))
 	End Function
 
-	Function FillPath(ByRef brush As /*Const*/ Brush, ByRef path As /*Const*/ GraphicsPath) As Status
+	Function FillPath(brush As /*Const*/ Brush, path As /*Const*/ GraphicsPath) As Status
 		Return SetStatus(GdipFillPath(nativeGraphics, brush->nativeBrush, path->nativePath))
 	End Function
 
-	Function FillClosedCurve(ByRef brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
+	Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
 		Return SetStatus(GdipFillClosedCurve(nativeGraphics, brush->nativeBrush, points, count))
 	End Function
 
-	Function FillClosedCurve(ByRef brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
+	Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
 		Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode))
 	End Function
 
-	Function FillClosedCurve(ByRef brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode, tension As Single) As Status
+	Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode, tension As Single) As Status
 		Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode))
 	End Function
 
-	Function FillClosedCurve(ByRef brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
+	Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
 		Return SetStatus(GdipFillClosedCurveI(nativeGraphics, brush->nativeBrush, points, count))
 	End Function
 
-	Function FillClosedCurve(ByRef brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
+	Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
 		Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode))
 	End Function
 
-	Function FillClosedCurve(ByRef brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode, tension As Single) As Status
+	Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode, tension As Single) As Status
 		Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode))
 	End Function
 
-	Function FillRegion(ByRef brush As /*Const*/ Brush, ByRef region As /*Const*/ Region) As Status
+	Function FillRegion(brush As /*Const*/ Brush, region As /*Const*/ Region) As Status
 		Return SetStatus(GdipFillRegion(nativeGraphics, brush->nativeBrush, region->nativeRegion))
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef layoutRect As /*Const*/ RectangleF) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF) As Status
 		Dim nativeFont As *GpFont
 		If VarPtr(font) <> 0 Then
@@ -717,6 +717,6 @@
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef layoutRect As /*Const*/ Rectangle,
-		ByRef stringFormat As /*Const*/ StringFormat, ByRef brush As /*Const*/ Brush) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ Rectangle,
+		stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
 
 		Dim nativeFont As *GpFont
@@ -735,6 +735,6 @@
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef layoutRect As /*Const*/ RectangleF,
-		ByRef stringFormat As /*Const*/ StringFormat, ByRef brush As /*Const*/ Brush) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
+		stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
 
 		Dim nativeFont As *GpFont
@@ -759,5 +759,5 @@
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef origin As /*Const*/ Point) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ Point) As Status
 		Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
 		Dim nativeFont As *GpFont
@@ -770,6 +770,6 @@
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef origin As /*Const*/ PointF,
-		ByRef brush As /*Const*/ Brush) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
+		brush As /*Const*/ Brush) As Status
 
 		Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
@@ -789,5 +789,5 @@
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef origin As /*Const*/ PointF) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF) As Status
 		Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
 		Dim nativeFont As *GpFont
@@ -800,6 +800,6 @@
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef origin As /*Const*/ PointF,
-		ByRef stringFormat As /*Const*/ StringFormat) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
+		stringFormat As /*Const*/ StringFormat) As Status
 
 		Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
@@ -819,6 +819,6 @@
 	End Function
 
-	Function DrawString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef origin As /*Const*/ PointF,
-		ByRef stringFormat As /*Const*/ StringFormat, ByRef brush As /*Const*/ Brush) As Status
+	Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
+		stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
 
 		Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
@@ -843,20 +843,20 @@
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef layoutRect As /*Const*/ RectangleF,
-		ByRef stringFormat As /*Const*/ StringFormat, ByRef boundingBox As RectangleF) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
+		stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF) As Status
 
 		Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, ByVal 0, ByVal 0)
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef layoutRect As /*Const*/ RectangleF,
-		ByRef stringFormat As /*Const*/ StringFormat, ByRef boundingBox As RectangleF,
-		ByRef codepointsFitted As Long) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
+		stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF,
+		codepointsFitted As Long) As Status
 
 		Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, codepointsFitted, ByVal 0)
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font, ByRef layoutRect As /*Const*/ RectangleF,
-		ByRef stringFormat As /*Const*/ StringFormat, ByRef boundingBox As RectangleF,
-		ByRef codepointsFitted As Long, ByRef linesFilled As Long) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
+		stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF,
+		codepointsFitted As Long, linesFilled As Long) As Status
 
 		Dim nativeFont As *GpFont
@@ -876,21 +876,21 @@
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font,
-		ByRef layoutRectSize As /*Const*/ SizeF, ByRef stringFormat As /*Const*/ StringFormat,
-		ByRef size As SizeF) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
+		layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
+		size As SizeF) As Status
 
 			Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, ByVal 0, ByVal 0)
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font,
-		ByRef layoutRectSize As /*Const*/ SizeF, ByRef stringFormat As /*Const*/ StringFormat,
-		ByRef size As SizeF, ByRef codepointsFitted As Long) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
+		layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
+		size As SizeF, codepointsFitted As Long) As Status
 
 			Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, codepointsFitted, ByVal 0)
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font,
-		ByRef layoutRectSize As /*Const*/ SizeF, ByRef stringFormat As /*Const*/ StringFormat,
-		ByRef size As SizeF, ByRef codepointsFitted As Long, ByRef linesFilled As Long) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
+		layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
+		size As SizeF, codepointsFitted As Long, linesFilled As Long) As Status
 
 		Dim layoutRect As RectangleF(0, 0, layoutRectSize.Width, layoutRectSize.Height)
@@ -925,7 +925,7 @@
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font,
-		ByRef origin As /*Const*/ PointF, ByRef stringFormat As /*Const*/ StringFormat,
-		ByRef boundingBox As RectangleF) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
+		origin As /*Const*/ PointF, stringFormat As /*Const*/ StringFormat,
+		boundingBox As RectangleF) As Status
 
 		Dim rect As RectangleF(origin.X, origin.Y, 0.0f, 0.0f)
@@ -946,6 +946,6 @@
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font,
-		ByRef layoutRect As /*Const*/ RectangleF, ByRef boundingBox As RectangleF) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
+		layoutRect As /*Const*/ RectangleF, boundingBox As RectangleF) As Status
 
 		Dim nativeFont As *GpFont
@@ -959,6 +959,6 @@
 	End Function
 
-	Const Function MeasureString(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font,
-		ByRef origin As /*Const*/ PointF, ByRef boundingBox As RectangleF) As Status
+	Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
+		origin As /*Const*/ PointF, boundingBox As RectangleF) As Status
 		Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
 
@@ -972,6 +972,6 @@
 	End Function
 
-	Const Function MeasureCharacterRanges(str As PCWSTR, length As Long, ByRef font As /*Const*/ Font,
-		ByRef layoutRect As /*Const*/ RectangleF, ByRef stringFormat As /*Const*/ StringFormat,
+	Const Function MeasureCharacterRanges(str As PCWSTR, length As Long, font As /*Const*/ Font,
+		layoutRect As /*Const*/ RectangleF, stringFormat As /*Const*/ StringFormat,
 		regionCount As Long, regions As *Region) As Status
 		If regions = 0 Or regionCount <= 0 Then
@@ -1009,12 +1009,12 @@
 	End Function
 
-	Function DrawDriverString(text As /*Const*/ Word, length As Long, ByRef font As /*Const*/ Font,
-		ByRef brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long) As Status
+	Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
+		brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long) As Status
 
 		Return DrawDriverString(text, length, font, brush, positions, flags, ByVal 0)
 	End Function
 
-	Function DrawDriverString(text As /*Const*/ Word, length As Long, ByRef font As /*Const*/ Font,
-		ByRef brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long, ByRef matrix As /*Const*/ Matrix) As Status
+	Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
+		brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix) As Status
 
 		Dim nativeFont As *GpFont
@@ -1039,6 +1039,6 @@
 	End Function
 
-	Const Function MeasureDriverString(text As /*Const*/ Word, length As Long, ByRef font As /*Const*/ Font,
-		positions As /*Const*/ *PointF, flags As Long, ByRef matrix As /*Const*/ Matrix, ByRef boundingBox As RectangleF) As Status
+	Const Function MeasureDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
+		positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix, boundingBox As RectangleF) As Status
 
 		Dim nativeFont As *GpFont
@@ -1061,13 +1061,13 @@
 	' native format differs from this Graphics.
 
-	Function DrawCachedBitmap(ByRef cb As CachedBitmap, x As Long, y As Long) As Status
+	Function DrawCachedBitmap(cb As CachedBitmap, x As Long, y As Long) As Status
 		Return SetStatus(GdipDrawCachedBitmap(nativeGraphics, cb->nativeCachedBitmap, x, y))
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef point As /*Const*/ PointF) As Status
+	Function DrawImage(image As Image, point As /*Const*/ PointF) As Status
 		Return DrawImage(image, point.X, point.Y)
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Single, y As Single) As Status
+	Function DrawImage(image As Image, x As Single, y As Single) As Status
 		Dim nativeImage As *GpImage
 		If VarPtr(image) <> 0 Then
@@ -1079,9 +1079,9 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef rect As /*Const*/ RectangleF) As Status
+	Function DrawImage(image As Image, rect As /*Const*/ RectangleF) As Status
 		Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Single, y As Single, width As Single, height As Single) As Status
+	Function DrawImage(image As Image, x As Single, y As Single, width As Single, height As Single) As Status
 		Dim nativeImage As *GpImage
 		If VarPtr(image) <> 0 Then
@@ -1093,9 +1093,9 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef point As /*Const*/ Point) As Status
+	Function DrawImage(image As Image, point As /*Const*/ Point) As Status
 		Return DrawImage(image, point.X, point.Y) As Status
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Long, y As Long) As Status
+	Function DrawImage(image As Image, x As Long, y As Long) As Status
 		Dim nativeImage As *GpImage
 		If VarPtr(image) <> 0 Then
@@ -1107,9 +1107,9 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef rect As /*Const*/ Rectangle) As Status
+	Function DrawImage(image As Image, rect As /*Const*/ Rectangle) As Status
 		Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height)
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Long, y As Long, width As Long, height As Long) As Status
+	Function DrawImage(image As Image, x As Long, y As Long, width As Long, height As Long) As Status
 		Dim nativeImage As *GpImage
 		If VarPtr(image) <> 0 Then
@@ -1129,5 +1129,5 @@
 	'	   destPoints[3] <=> bottom-right corner
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ PointF, count As Long) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long) As Status
 		If count <> 3 And count <> 4 Then
 			Return SetStatus(InvalidParameter)
@@ -1143,5 +1143,5 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ Point, count As Long) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long) As Status
 		If count <> 3 And count <> 4 Then
 			Return SetStatus(InvalidParameter)
@@ -1157,5 +1157,5 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Single, y As Single,
+	Function DrawImage(image As Image, x As Single, y As Single,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
 
@@ -1169,5 +1169,5 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ RectangleF,
+	Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
 
@@ -1175,14 +1175,14 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ RectangleF,
+	Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+		imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ RectangleF,
+	Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes,
+		imageAttributes As /*Const*/ ImageAttributes,
 		callback As DrawImageAbort) As Status
 
@@ -1190,7 +1190,7 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ RectangleF,
+	Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
+		imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
 
 		Dim nativeImage As *GpImage
@@ -1212,5 +1212,5 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ PointF, count As Long,
+	Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
 
@@ -1218,14 +1218,14 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ PointF, count As Long,
+	Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+		imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ PointF, count As Long,
+	Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes,
+		imageAttributes As /*Const*/ ImageAttributes,
 		callback As DrawImageAbort) As Status
 
@@ -1233,7 +1233,7 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ PointF, count As Long,
+	Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
+		imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
 
 		Dim nativeImage As *GpImage
@@ -1254,5 +1254,5 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Long, y As Long,
+	Function DrawImage(image As Image, x As Long, y As Long,
 		srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status
 
@@ -1266,5 +1266,5 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ Rectangle,
+	Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
 
@@ -1272,21 +1272,21 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ Rectangle,
+	Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+		imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ Rectangle,
+	Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
 		srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
+		imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
 
 		Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
 	End Function
 
-	Function DrawImage(ByRef image As Image, ByRef destRect As /*Const*/ Rectangle,
+	Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
 		srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
+		imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
 
 		Dim nativeImage As *GpImage
@@ -1308,5 +1308,5 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ Point, count As Long,
+	Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
 		srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status
 
@@ -1314,14 +1314,14 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ Point, count As Long,
+	Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
 		srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+		imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ Point, count As Long, _
+	Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long, _
 		srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit, _
-		ByRef imageAttributes As /*Const*/ ImageAttributes,
+		imageAttributes As /*Const*/ ImageAttributes,
 		callback As DrawImageAbort) As Status
 
@@ -1329,7 +1329,7 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ Point, count As Long,
+	Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
 		srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
-		ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
+		imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
 
 		Dim nativeImage As *GpImage
@@ -1350,41 +1350,41 @@
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *Point, count As Long, ByRef srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *PointF, count As Long, ByRef srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Long, y As Long, ByRef srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
+	Function DrawImage(image As Image, x As Long, y As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
 		Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
 	End Function
 
-	Function DrawImage(ByRef image As Image, x As Single, y As Single, ByRef srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
+	Function DrawImage(image As Image, x As Single, y As Single, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
 		Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *Point, count As Long, ByRef srcRect As Rectangle, srcUnit As GraphicsUnit, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *PointF, count As Long, ByRef srcRect As RectangleF, srcUnit As GraphicsUnit, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *Point, count As Long, ByRef srcRect As Rectangle, srcUnit As GraphicsUnit, ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *PointF, count As Long, ByRef srcRect As RectangleF, srcUnit As GraphicsUnit, ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *Point, count As Long, ByRef srcRect As Rectangle, srcUnit As GraphicsUnit, ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData)
 	End Function
 
-	Function DrawImage(ByRef image As Image, destPoints As /*Const*/ *PointF, count As Long, ByRef srcRect As RectangleF, srcUnit As GraphicsUnit, ByRef imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
+	Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
 		Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData)
 	End Function
@@ -1396,5 +1396,5 @@
 	' to play the particular record.
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destPoint As /*Const*/ PointF,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
 		callback As EnumerateMetafileProc) As Status
 
@@ -1402,5 +1402,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destPoint As /*Const*/ PointF,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1408,6 +1408,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destPoint As /*Const*/ PointF,
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1428,5 +1428,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destPoint As /*Const*/ Point,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
 		callback As EnumerateMetafileProc) As Status
 
@@ -1434,5 +1434,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destPoint As /*Const*/ Point,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1440,6 +1440,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destPoint As /*Const*/ Point,
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1460,5 +1460,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destRect As /*Const*/ RectangleF,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
 		callback As EnumerateMetafileProc) As Status
 
@@ -1466,5 +1466,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destRect As /*Const*/ RectangleF,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1472,6 +1472,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destRect As /*Const*/ RectangleF,
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1492,5 +1492,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destRect As /*Const*/ Rectangle,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
 		callback As EnumerateMetafileProc) As Status
 
@@ -1498,5 +1498,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destRect As /*Const*/ Rectangle,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1504,6 +1504,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, ByRef destRect As /*Const*/ Rectangle,
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1524,5 +1524,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
 		callback As EnumerateMetafileProc) As Status
 
@@ -1530,5 +1530,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1536,6 +1536,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1556,5 +1556,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
 		callback As EnumerateMetafileProc) As Status
 
@@ -1562,5 +1562,5 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1568,6 +1568,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1588,6 +1588,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile,
-		ByRef destPoint As /*Const*/ PointF, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile,
+		destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
 		callback As EnumerateMetafileProc) As Status
 
@@ -1595,6 +1595,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile,
-		ByRef destPoint As /*Const*/ PointF, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile,
+		destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1602,7 +1602,7 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile,
-		ByRef destPoint As /*Const*/ PointF, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile,
+		destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1623,6 +1623,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destPoint As /*Const*/ Point, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc) As Status
 
@@ -1630,6 +1630,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destPoint As /*Const*/ Point, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1637,7 +1637,7 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destPoint As /*Const*/ Point, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1658,6 +1658,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destRect As /*Const*/ RectangleF, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc) As Status
 
@@ -1665,6 +1665,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destRect As /*Const*/ RectangleF, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1672,7 +1672,7 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destRect As /*Const*/ RectangleF, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1693,6 +1693,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destRect As /*Const*/ Rectangle, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc) As Status
 
@@ -1700,6 +1700,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destRect As /*Const*/ Rectangle, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1707,7 +1707,7 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		ByRef destRect As /*Const*/ Rectangle, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1728,6 +1728,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		destPoints As /*Const*/ *PointF, count As Long, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc) As Status
 
@@ -1735,6 +1735,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		destPoints As /*Const*/ *PointF, count As Long, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1742,7 +1742,7 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		destPoints As /*Const*/ *PointF, count As Long, ByRef srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1763,6 +1763,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		destPoints As /*Const*/ *Point, count As Long, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc) As Status
 
@@ -1770,6 +1770,6 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		destPoints As /*Const*/ *Point, count As Long, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
 		callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
 
@@ -1777,7 +1777,7 @@
 	End Function
 
-	Function EnumerateMetafile(ByRef metafile As /*Const*/ Metafile, _
-		destPoints As /*Const*/ *Point, count As Long, ByRef srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
-		callback As EnumerateMetafileProc, callbackData As VoidPtr, ByRef imageAttributes As /*Const*/ ImageAttributes) As Status
+	Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
+		destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
+		callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
 
 		Dim nativeImage As /*Const*/ *GpMetafile
@@ -1798,41 +1798,41 @@
 	End Function
 
-	Function SetClip(ByRef g As /*Const*/ Graphics) As Status
+	Function SetClip(g As /*Const*/ Graphics) As Status
 		Return SetClip(g, CombineMode.Replace)
 	End Function
 
-	Function SetClip(ByRef rc As /*Const*/ RectangleF) As Status
+	Function SetClip(rc As /*Const*/ RectangleF) As Status
 		Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace))
 	End Function
 
-	Function SetClip(ByRef rc As /*Const*/ Rectangle) As Status
+	Function SetClip(rc As /*Const*/ Rectangle) As Status
 		Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace))
 	End Function
 
-	Function SetClip(ByRef path As /*Const*/ GraphicsPath) As Status
+	Function SetClip(path As /*Const*/ GraphicsPath) As Status
 		Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, CombineMode.Replace))
 	End Function
 
-	Function SetClip(ByRef region As /*Const*/ Region) As Status
+	Function SetClip(region As /*Const*/ Region) As Status
 		Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Replace))
 	End Function
 
-	Function SetClip(ByRef g As /*Const*/ Graphics, combineMode As CombineMode) As Status
+	Function SetClip(g As /*Const*/ Graphics, combineMode As CombineMode) As Status
 		Return SetStatus(GdipSetClipGraphics(nativeGraphics, g->nativeGraphics, combineMode))
 	End Function
 
-	Function SetClip(ByRef rc As /*Const*/ RectangleF, combineMode As CombineMode) As Status
+	Function SetClip(rc As /*Const*/ RectangleF, combineMode As CombineMode) As Status
 		Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode))
 	End Function
 
-	Function SetClip(ByRef rc As /*Const*/ Rectangle, combineMode As CombineMode) As Status
+	Function SetClip(rc As /*Const*/ Rectangle, combineMode As CombineMode) As Status
 		Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode))
 	End Function
 
-	Function SetClip(ByRef path As /*Const*/ GraphicsPath, combineMode As CombineMode) As Status
+	Function SetClip(path As /*Const*/ GraphicsPath, combineMode As CombineMode) As Status
 		Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, combineMode))
 	End Function
 
-	Function SetClip(ByRef region As /*Const*/ Region, combineMode As CombineMode) As Status
+	Function SetClip(region As /*Const*/ Region, combineMode As CombineMode) As Status
 		Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, combineMode))
 	End Function
@@ -1846,25 +1846,25 @@
 	End Function
 
-	Function IntersectClip(ByRef rc As /*Const*/ RectangleF) As Status
+	Function IntersectClip(rc As /*Const*/ RectangleF) As Status
 		Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect))
 	End Function
 
-	Function IntersectClip(ByRef rc As /*Const*/ Rectangle) As Status
+	Function IntersectClip(rc As /*Const*/ Rectangle) As Status
 		Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect))
 	End Function
 
-	Function IntersectClip(ByRef region As /*Const*/ Region) As Status
+	Function IntersectClip(region As /*Const*/ Region) As Status
 		Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Intersect))
 	End Function
 
-	Function ExcludeClip(ByRef rc As /*Const*/ RectangleF) As Status
+	Function ExcludeClip(rc As /*Const*/ RectangleF) As Status
 		Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude))
 	End Function
 
-	Function ExcludeClip(ByRef rc As /*Const*/ Rectangle) As Status
+	Function ExcludeClip(rc As /*Const*/ Rectangle) As Status
 		Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude))
 	End Function
 
-	Function ExcludeClip(ByRef region As /*Const*/ Region) As Status
+	Function ExcludeClip(region As /*Const*/ Region) As Status
 		Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Exclude))
 	End Function
@@ -1882,21 +1882,21 @@
 	End Function
 
-	Const Function GetClip(ByRef region As Region) As Status
+	Const Function GetClip(region As Region) As Status
 		Return SetStatus(GdipGetClip(nativeGraphics, region->nativeRegion))
 	End Function
 
-	Const Function GetClipBounds(ByRef rc As RectangleF) As Status
+	Const Function GetClipBounds(rc As RectangleF) As Status
 		Return SetStatus(GdipGetClipBounds(nativeGraphics, rc))
 	End Function
 
-	Const Function GetClipBounds(ByRef rc As Rectangle) As Status
+	Const Function GetClipBounds(rc As Rectangle) As Status
 		Return SetStatus(GdipGetClipBoundsI(nativeGraphics, rc))
 	End Function
 
-	Const Function GetVisibleClipBounds(ByRef rc As RectangleF) As Status
+	Const Function GetVisibleClipBounds(rc As RectangleF) As Status
 		Return SetStatus(GdipGetVisibleClipBounds(nativeGraphics, rc))
 	End Function
 
-	Const Function GetVisibleClipBounds(ByRef rc As Rectangle) As Status
+	Const Function GetVisibleClipBounds(rc As Rectangle) As Status
 		Return SetStatus(GdipGetVisibleClipBoundsI(nativeGraphics, rc))
 	End Function
@@ -1908,5 +1908,5 @@
 	End Function
 
-	Const Function IsVisible(ByRef pt As /*Const*/ Point) As BOOL
+	Const Function IsVisible(pt As /*Const*/ Point) As BOOL
 		Return IsVisible(pt.X, pt.Y)
 	End Function
@@ -1918,5 +1918,5 @@
 	End Function
 
-	Const Function IsVisible(ByRef rc As /*Const*/ Rectangle) As BOOL
+	Const Function IsVisible(rc As /*Const*/ Rectangle) As BOOL
 		Return IsVisible(rc.X, rc.Y, rc.Width, rc.Height)
 	End Function
@@ -1928,5 +1928,5 @@
 	End Function
 
-	Const Function IsVisible(ByRef point As /*Const*/ PointF) As BOOL
+	Const Function IsVisible(point As /*Const*/ PointF) As BOOL
 		Return IsVisible(pt.X, pt.Y)
 	End Function
@@ -1938,5 +1938,5 @@
 	End Function
 
-	Const Function IsVisible(ByRef rect As /*Const*/ RectangleF) As BOOL
+	Const Function IsVisible(rect As /*Const*/ RectangleF) As BOOL
 		Return IsVisible(rc.X, rc.Y, rc.Width, rc.Height)
 	End Function
@@ -1952,5 +1952,5 @@
 	End Function
 
-	Function BeginContainer(ByRef dstrect As /*Const*/ RectangleF, ByRef srcrect As /*Const*/ RectangleF, unit As GraphicsUnit) As GraphicsContainer
+	Function BeginContainer(dstrect As /*Const*/ RectangleF, srcrect As /*Const*/ RectangleF, unit As GraphicsUnit) As GraphicsContainer
 		Dim state As GraphicsContainer
 		SetStatus(GdipBeginContainer(nativeGraphics, dstrect, srcrect, unit, state))
@@ -1958,5 +1958,5 @@
 	End Function
 
-	Function BeginContainer(ByRef dstrect As /*Const*/ Rectangle, ByRef srcrect As /*Const*/ Rectangle, unit As GraphicsUnit) As GraphicsContainer
+	Function BeginContainer(dstrect As /*Const*/ Rectangle, srcrect As /*Const*/ Rectangle, unit As GraphicsUnit) As GraphicsContainer
 		Dim state As GraphicsContainer
 		SetStatus(GdipBeginContainerI(nativeGraphics, dstrect, srcrect, unit, state))
@@ -1991,8 +1991,8 @@
 
 Private
-'	Sub Graphics(ByRef gr As Graphics)
+'	Sub Graphics(gr As Graphics)
 '		Debug
 '	End Sub
-	Sub Operator =(ByRef gr As Graphics)
+	Sub Operator =(gr As Graphics)
 		Debug
 	End Sub
Index: Include/Classes/System/Drawing/Imaging/misc.ab
===================================================================
--- Include/Classes/System/Drawing/Imaging/misc.ab	(revision 166)
+++ Include/Classes/System/Drawing/Imaging/misc.ab	(revision 212)
@@ -429,3 +429,11 @@
 End Type
 
+Enum ColorChannelFlag
+	ColorChannelC = 0
+	ColorChannelM
+	ColorChannelY
+	ColorChannelK
+	ColorChannelLast
+End Enum
+
 #endif '__SYSTEM_DRAWING_IMAGING_MISC_AB__
Index: Include/Classes/System/Drawing/Point.ab
===================================================================
--- Include/Classes/System/Drawing/Point.ab	(revision 166)
+++ Include/Classes/System/Drawing/Point.ab	(revision 212)
@@ -20,5 +20,5 @@
 	End Sub
 
-	Sub Point(ByRef pt As Point)
+	Sub Point(pt As Point)
 		x = pt.x
 		y = pt.y
@@ -52,16 +52,12 @@
 
 	Function IsEmpty() As Boolean
-		If x = 0 And y = 0 Then
-			Return _System_TRUE
-		Else
-			Return _System_FALSE
-		End If
+		Return x = 0 And y = 0
 	End Function
-
+/*
 	Sub Operator = (ByRef pt As Point)
 		x = pt.x
 		y = pt.y
 	End Sub
-
+*/
 	Function Operator + (pt As Point) As Point
 		Return Add(This, pt)
@@ -119,9 +115,5 @@
 
 	Function Equals(pt As Point) As Boolean
-		If x = pt.x And y = pt.y Then
-			Equals = _System_TRUE
-		Else
-			Equals = _System_FALSE
-		End If
+		Return x = pt.x And y = pt.y
 	End Function
 
@@ -145,4 +137,8 @@
 	End Function
 
+	Function Operator () As PointF
+		Return Return PointF(X, Y)
+	End Function
+
 Private
 	x As Long
Index: Include/Classes/System/Drawing/PointF.ab
===================================================================
--- Include/Classes/System/Drawing/PointF.ab	(revision 166)
+++ Include/Classes/System/Drawing/PointF.ab	(revision 212)
@@ -19,10 +19,10 @@
 	End Sub
 
-	Sub PointF(ByRef pt As PointF)
+	Sub PointF(pt As PointF)
 		x = pt.x
 		y = pt.y
 	End Sub
 
-	Sub PointF(ByRef sz As SizeF)
+	Sub PointF(sz As SizeF)
 		x = sz.Width
 		y = sz.Height
@@ -46,21 +46,12 @@
 
 	Function IsEmpty() As Boolean
-		If x = 0 And y = 0 Then
-			Return _System_TRUE
-		Else
-			Return _System_FALSE
-		End If
+		Return x = 0 And y = 0
 	End Function
-
+/*
 	Sub Operator = (ByRef pt As PointF)
 		x = pt.x
 		y = pt.y
 	End Sub
-
-	Function Operator () As PointF
-		Dim ptf As PointF(X, Y)
-		Return ptf
-	End Function
-
+*/
 	Function Operator + (pt As PointF) As PointF
 		Return Add(This, pt)
@@ -126,13 +117,9 @@
 
 	Function Equals(pt As PointF) As Boolean
-		If x = pt.x And y = pt.y Then
-			Equals = _System_TRUE
-		Else
-			Equals = _System_FALSE
-		End If
+		Return x = pt.x And y = pt.y
 	End Function
 
 	Override Function GetHashCode() As Long
-		Return GetDWord(VarPtr(x)) Xor _System_BSwap(GetDWord(VarPtr(x)))
+		Return (GetDWord(VarPtr(x)) Xor _System_BSwap(GetDWord(VarPtr(x)))) As Long
 	End Function
 
Index: Include/Classes/System/Drawing/Rectangle.ab
===================================================================
--- Include/Classes/System/Drawing/Rectangle.ab	(revision 166)
+++ Include/Classes/System/Drawing/Rectangle.ab	(revision 212)
@@ -48,5 +48,5 @@
 	End Function
 
-	Sub Location(ByRef point As Point)
+	Sub Location(point As Point)
 		x = point.X
 		y = point.Y
@@ -57,5 +57,5 @@
 	End Function
 
-	Sub Size(ByRef size As Size)
+	Sub Size(size As Size)
 		width = size.Width
 		height = size.Height
@@ -117,6 +117,6 @@
 		End If
 	End Function
-
-	Function Operator = (ByRef rc As Rectangle)
+/*
+	Function Operator = (rc As Rectangle)
 		With rc
 			x = .x
@@ -126,23 +126,22 @@
 		End With
 	End Function
-
-	Function Operator == (ByRef rc As Rectangle)
+*/
+	Function Operator == (rc As Rectangle)
 		Return Equals(rc)
 	End Function
 
-	Function Operator <> (ByRef rc As Rectangle)
+	Function Operator <> (rc As Rectangle)
 		Return Not Equals(rc)
 	End Function
 
 	Function Operator () As RectangleF
-		Dim r As RectangleF(x, y, width, height)
-		Return r
-	End Function
-
-	Function Equals(ByRef rc As Rectangle) As Boolean
+		Return New RectangleF(x, y, width, height)
+	End Function
+
+	Function Equals(rc As Rectangle) As Boolean
 		If X = rc.X And Y = rc.Y And Width = rc.Width And Height = rc.Height Then
-			Equals = _System_TRUE
-		Else
-			Equals = _System_FALSE
+			Return True
+		Else
+			Return False
 		End If
 	End Function
@@ -153,25 +152,24 @@
 
 	Static Function FromLTRB(l As Long, t As Long, r As Long, b As Long) As Rectangle
-		Dim rect As Rectangle(l, t, r - l, r - b)
-		return rect
+		return New Rectangle(l, t, r - l, r - b)
 	End Function
 
 	Function Contains(x As Long, y As Long) As Boolean
 		If x >= X And x < X + Width And y >= Y And y < Y + Height Then
-			Contains = _System_TRUE
-		Else
-			Contains = _System_FALSE
-		End If
-	End Function
-
-	Function Contains(ByRef pt As Point) As Boolean
-		ContainsPTF = Contains(pt.X, pt.Y)
-	End Function
-
-	Function Contains(ByRef rc As Rectangle) As Boolean
+			Return True
+		Else
+			Return False
+		End If
+	End Function
+
+	Function Contains(pt As Point) As Boolean
+		Return Contains(pt.X, pt.Y)
+	End Function
+
+	Function Contains(rc As Rectangle) As Boolean
 		If X <= rc.X And rc.Right <= Right And Y <= rc.Y And rc.Bottom <= Bottom Then
-			ContainsRCF = _System_TRUE
-		Else
-			ContainsRCF = _System_FALSE
+			Return True
+		Else
+			Return False
 		End If
 	End Function
@@ -188,14 +186,14 @@
 	End Sub
 
-	Static Function Inflate(ByRef rc As Rectangle, x As Long, y As Long) As Rectangle
-		Inflate = rc
+	Static Function Inflate(rc As Rectangle, x As Long, y As Long) As Rectangle
+		Inflate = New Rectangle(rc)
 		Inflate.Inflate(x, y)
 	End Function
 
-	Sub Intersect(ByRef rect As Rectangle)
+	Sub Intersect(rect As Rectangle)
 		This = Rectangle.Intersect(This, rect)
 	End Sub
 
-	Static Function Intersect(ByRef a As Rectangle, ByRef b As Rectangle) As Rectangle
+	Static Function Intersect(a As Rectangle, ByRef b As Rectangle) As Rectangle
 		Dim right As Long, bottom As Long, left As Long, top As Long
 		right = Math.Min(a.Right, b.Right)
@@ -206,16 +204,16 @@
 	End Function
 
-	Function IntersectsWith(ByRef rc As Rectangle) As Boolean
+	Function IntersectsWith(rc As Rectangle) As Boolean
 		If Left < rc.Right And _
 			Top < rc.Bottom And _
 			Right > rc.Left And _
 			Bottom > rc.Top Then
-			IntersectsWith = _System_TRUE
-		Else
-			IntersectsWith = _System_FALSE
-		End If
-	End Function
-
-	Static Function Union(ByRef a As Rectangle, ByRef b As Rectangle) As Rectangle
+			Return True
+		Else
+			Return False
+		End If
+	End Function
+
+	Static Function Union(a As Rectangle, b As Rectangle) As Rectangle
 		Dim right As Long, bottom As Long, left As Long, top As Long
 		right = Math.Max(a.Right(), b.Right())
Index: Include/Classes/System/Drawing/RectangleF.ab
===================================================================
--- Include/Classes/System/Drawing/RectangleF.ab	(revision 166)
+++ Include/Classes/System/Drawing/RectangleF.ab	(revision 212)
@@ -31,5 +31,5 @@
 	End Sub
 
-	Sub RectangleF(ByRef rc As RectangleF)
+	Sub RectangleF(rc As RectangleF)
 		x = rc.x
 		y = rc.y
@@ -43,5 +43,5 @@
 	End Function
 
-	Sub Location(ByRef point As PointF)
+	Sub Location(point As PointF)
 		x = point.X
 		y = point.Y
@@ -52,5 +52,5 @@
 	End Function
 
-	Sub Size(ByRef size As SizeF)
+	Sub Size(size As SizeF)
 		width = size.Width
 		height = size.Height
@@ -112,5 +112,5 @@
 		End If
 	End Function
-
+/*
 	Function Operator =(ByRef rc As RectangleF)
 		With rc
@@ -121,18 +121,18 @@
 		End With
 	End Function
-
-	Function Operator ==(ByRef rc As RectangleF)
+*/
+	Function Operator ==(rc As RectangleF)
 		Return Equals(rc)
 	End Function
 
-	Function Operator <>(ByRef rc As RectangleF)
+	Function Operator <>(rc As RectangleF)
 		Return Not Equals(rc)
 	End Function
 
-	Function Equals(ByRef rc As RectangleF) As Boolean
+	Function Equals(rc As RectangleF) As Boolean
 		If X = rc.X And Y = rc.Y And Width = rc.Width And Height = rc.Height Then
-			Equals = _System_TRUE
-		Else
-			Equals = _System_FALSE
+			Return True
+		Else
+			Return False
 		End If
 	End Function
@@ -143,6 +143,5 @@
 
 	Static Function FromLTRB(l As Single, t As Single, r As Single, b As Single) As RectangleF
-		Dim rect As RectangleF(l, t, r - l, b - t)
-		return rect
+		return New RectangleF(l, t, r - l, b - t)
 	End Function
 
@@ -155,13 +154,13 @@
 	End Function
 
-	Function Contains(ByRef pt As PointF) As Boolean
-		ContainsPTF = Contains(pt.X, pt.Y)
-	End Function
-
-	Function Contains(ByRef rc As RectangleF) As Boolean
+	Function Contains(pt As PointF) As Boolean
+		Return Contains(pt.X, pt.Y)
+	End Function
+
+	Function Contains(rc As RectangleF) As Boolean
 		If X <= rc.X And rc.Right <= Right And Y <= rc.Y And rc.Bottom <= Bottom Then
-			ContainsRCF = _System_TRUE
-		Else
-			ContainsRCF = _System_FALSE
+			Return True
+		Else
+			Return False
 		End If
 	End Function
@@ -178,14 +177,14 @@
 	End Sub
 
-	Static Function Inflate(ByRef rc As RectangleF, x As Single, y As Single) As RectangleF
-		Inflate = rc
+	Static Function Inflate(rc As RectangleF, x As Single, y As Single) As RectangleF
+		Inflate = New Rectangle(rc)
 		Inflate.Inflate(x, y)
 	End Function
 
-	Sub Intersect(ByRef rect As RectangleF)
+	Sub Intersect(rect As RectangleF)
 		This = RectangleF.Intersect(This, rect)
 	End Sub
 	
-	Static Function Intersect(ByRef a As RectangleF, ByRef b As RectangleF) As RectangleF
+	Static Function Intersect(a As RectangleF, b As RectangleF) As RectangleF
 		Dim right As Single, bottom As Single, left As Single, top As Single
 		right = Math.Min(a.Right, b.Right)
@@ -196,5 +195,5 @@
 	End Function
 
-	Function IntersectsWith(ByRef rc As RectangleF) As Boolean
+	Function IntersectsWith(rc As RectangleF) As Boolean
 		If Left < rc.Right And _
 			Top < rc.Bottom And _
@@ -207,5 +206,5 @@
 	End Function
 
-	Static Function Union(ByRef a As RectangleF, ByRef b As RectangleF) As RectangleF
+	Static Function Union(a As RectangleF, b As RectangleF) As RectangleF
 		Dim right As Single, bottom As Single, left As Single, top As Single
 		right = Math.Max(a.Right(), b.Right())
Index: Include/Classes/System/Drawing/Size.ab
===================================================================
--- Include/Classes/System/Drawing/Size.ab	(revision 166)
+++ Include/Classes/System/Drawing/Size.ab	(revision 212)
@@ -19,5 +19,5 @@
 	End Sub
 
-	Sub Size(ByRef sz As Size)
+	Sub Size(sz As Size)
 		width = sz.width
 		height = sz.height
@@ -62,10 +62,10 @@
 		Return Not Equals(sz)
 	End Function
-
+/*
 	Sub Operator =(ByRef sz As Size)
 		width = sz.width
 		height = sz.height
 	End Sub
-
+*/
 	Function Equals(sz As Size) As Boolean
 		If width = sz.width And height = sz.height Then
@@ -81,9 +81,5 @@
 
 	Function IsEmpty() As Boolean
-		If width = 0 And height = 0 Then
-			Empty = _System_TRUE
-		Else
-			Empty = _System_FALSE
-		End If
+		Return width = 0 And height = 0
 	End Function
 
Index: Include/Classes/System/Drawing/SizeF.ab
===================================================================
--- Include/Classes/System/Drawing/SizeF.ab	(revision 166)
+++ Include/Classes/System/Drawing/SizeF.ab	(revision 212)
@@ -19,5 +19,5 @@
 	End Sub
 
-	Sub SizeF(ByRef sz As SizeF)
+	Sub SizeF(sz As SizeF)
 		width = sz.width
 		height = sz.height
@@ -57,10 +57,10 @@
 		Return Not Equals(sz)
 	End Function
-
+/*
 	Sub Operator =(ByRef sz As SizeF)
 		width = sz.width
 		height = sz.height
 	End Sub
-
+*/
 	Function Equals(sz As SizeF) As Boolean
 		If width = sz.width And height = sz.height Then
