Index: trunk/Include/Classes/System/Collections/Generic/Dictionary.ab
===================================================================
--- trunk/Include/Classes/System/Collections/Generic/Dictionary.ab	(revision 311)
+++ trunk/Include/Classes/System/Collections/Generic/Dictionary.ab	(revision 312)
@@ -8,13 +8,13 @@
 
 Namespace Detail
-	Class Pair
+	Class Pair<TKey, T>
 	Public
-		Sub Pair(key As Object, value As Object)
+		Sub Pair(key As TKey, value As T)
 			Key = key
 			Value = value
 		End Sub
 
-		Key As Object
-		Value As Object
+		Key As TKey
+		Value As T
 	End Class
 End Namespace 'Detail
@@ -39,6 +39,5 @@
 '	End Function
 
-'	Virtual Function Item(key As Key) As T
-	Virtual Function Item(key As Key) As Object
+	Virtual Function Item(key As Key) As T
 		Imports System.Collections.Generic.Detail
 
@@ -54,5 +53,5 @@
 			Dim i As Long
 			For i = 0 To ELM(a.Count)
-				Dim pair = a[i] As Pair
+				Dim pair = a[i] As Pair<T, Key>
 				If pair.Key.Equals(key) Then
 					Return pair.Value
@@ -82,5 +81,5 @@
 			Dim i As Long
 			For i = 0 To ELM(a.Count)
-				Dim pair = a[i] As Pair
+				Dim pair = a[i] As Pair<T, Key>
 				If pair.Key.Equals(key) Then
 					pair.Value = value
@@ -89,5 +88,5 @@
 		End If
 
-		a.Add(New Pair(key, value))
+		a.Add(New Pair<T, Key>(key, value))
 	End Sub
 
@@ -96,6 +95,5 @@
 /*
 	'Operators
-'	Function Operator [](key As Key) As T
-	Function Operator [](key As Key) As Object
+	Function Operator [](key As Key) As T
 		Return Item[key]
 	End Function
@@ -123,5 +121,5 @@
 			Dim i As Long
 			For i = 0 To ELM(a.Count)
-				Dim pair = a[i] As Pair
+				Dim pair = a[i] As Pair<T, Key>
 				If pair.Key.Equals(key) Then
 					'Throw ArgumentError
@@ -130,5 +128,5 @@
 		End If
 
-		a.Add(New Pair(key, value))
+		a.Add(New Pair<T, Key>(key, value))
 	End Sub
 
