["$ keyvaluepair.vb~.C$ ","\"FBcreates List of KeyValuePair instancesreturns KeyValuePair from Function","THUYBUUH; H;1UTSub HW()BUTT' CHM HU of key-HH pairs.UTTBDim HT As HU(Of KeyHFPair(Of H=, Integer)) =UTTTNew HU(Of KeyHFPair(Of H=, Integer))UTTHT.H]New KeyHFPair(Of H=, Integer)(YdotY, 1))UTTHT.H]New KeyHFPair(Of H=, Integer)(YnetY, 2))UTTHT.H]New KeyHFPair(Of H=, Integer)(YperlsY, 3))BUUTT' HGover pairs.UTTBFor Each pair As BKeyHFPairB(Of H=, Integer) In HTBUTTT' Get key.UTTTBDim key As H=H_pair.KeyBUTTT' Get HH.UTTTBDim HH As IntegerH_pair.HFBUTTT' H..UTTTBH%Y{0}, {1}Y, key, HH)UTTNextUTEnd SubUEnd H;UUBUUdot, 1Unet, 2Uperls, 3BUUH; H;1UTSub HW()UTTDim pair As BKeyHFPairB(Of Integer, Integer)H_GetPair()UTTH%pair.Key)UTTH%pair.HF)UTEnd SubUUTFunction GetPair() As KeyHFPair(Of Integer, Integer)BUTT' CHM HXpair.UTTBDim pair As BKeyHFPairB(Of Integer, Integer) =UTTTNew KeyHFPair(Of Integer, Integer)(5, 8)BUTT' Return the pair.UTTBReturn pairUTEnd FunctionUEnd H;UUBUU5U8B","H*ACEEAf./CCE| 69666}XC 796}XCCE.Bh","KeyValuePair."," A KeyValuePair is a Structure. It has two fields of specified types. It stores two pieces of data together as a single object. In VB.NET it is useful. It defines a Structure of any kind of key, and any kind of value.","Example."," In this first example, we create a List that stores element of type KeyValuePair. Notice how the (Of String, Integer) syntax is used to specify that the key of the pair is a String, and the value is an Integer. ","When creating a KeyValuePair, you must set the key and the value in the constructor.","Finally in this example, we loop through all the elements of the list with For-Each.","For Each ","for-each-vbnet","Example 2."," Sometimes you may want to return two values at once from a function in your VB.NET program. You could use the ByRef modifier. But the KeyValuePair can also be returned. The Key and Value can store the two values. ","In this example, the GetPair Function returns a new instance of the KeyValuePair type that has a specific key and value.","Tuple."," The KeyValuePair is restricted to a key and a value, but the Tuple type can have more items in its memory. If you need three of more fields grouped together, please check out the Tuple type. ","One drawback of the Tuple type is that is must be allocated on the managed heap as an object instance.","However: ","The KeyValuePair is a structure so it can often be allocated in the stack memory.","Tuple ","tuple-vbnet","Dictionary."," The easiest way to loop over the keys and values in a Dictionary instance is with the For-Each loop construct. In this code, you must use the KeyValuePair type as the type of the enumeration variable in the loop. ","Dictionary ","dictionary-vbnet","Summary."," KeyValuePair stores a key and a value together in a single object in memory. It is a value type. This makes it more efficient in some cases and less efficient in others. A common usage is in the For-Each loop in a Dictionary."]

%iVBORw0KG;)NSUhEUg?AL4?ABaBAM?AD0j/E6)GFBMVEX::yQmNChfJfX1+Q@C4uLjV1dXq6uomAbS5?ABZ0lEQVR4Xu3aMWvDMBAF4GuJpbX9C/0FgXfZDYoze5DTVUNMVi3N72+tUI9FB30Qt3qz+TDo/DiB5dUSWfL8Zsj2/RepzdO3L9X5Zb/5zW/+cVyA2LN89DIlCXuij/7v+s2/p/mP2D/N77BEE9fHgewjUc+3Q0/1Df3TfM75sudz09+XpsfoN5+4vtPE9e9Na/fnscr3gCZmP3wAmom+dAEA9jRfdlzfBarfAZpJ+9s6PzzfFZ7oayL3zz/dP29r/9Tdxm3+HNbzrbyNG3w/B8D;zf506LjOLL8okOE5us575j+KEL1h6vFv8fiAxqJ/hFLpsTy5RbZ93cXub6In/qN9qcbrgbfnQrQ7et9QN/rfZzKEmfyAT1X+zjki2k+SztDK/fbACiA0XK+c6yffx/Lyxjnx8X6+b9AE3F/Lo8afT8H8HwXg2E/tPabj1gyJJLvVp3l65CJ/ePPeSv7Z/Ob/1Pa/wmfEePG6VyNvUw)ASUVORK5CYII=%iVBORw0KG;)NSUhEUg?ALQ?ABwCAM?ACAaqqi)MFBMVEWj05zv+O7o9Ob8/vze79v::j8uH6/Pnr9urg8N70+vP3+/bf79zG4sHR6M61269duYTT?ACd0lEQVR4Xu3a646bQAyG4fg4ByC5/7vtFqlqtsV4UcvaI817Bc8P5wtBeXx38h/KhZ7oiZ7oiZ7oiZ7oiZ7oiZ7oiZ7oiZ7oiZ7oiZ7oid7wvTHQm3xqCPSrJET75uHQW5Hh0E+R4dAqw6G3IqOhty6SHe2T86OLDIh+joh+jYh+aGK0/5hUbkED0h2T13cibs870NR4hRvQP7H8ejxuQVf+SPtVtN9OvgddVt7Tchntdxca+VeVRkF3/l2DQdDK72kfAQ38R1jSo6nxX1VKjq58UIPU6MLH6ZIYjWyFJSu6s91aKSda+azWM6KBnXRJh6bGbkjJ0Mh+3CAVeuGvpT0RWvmrYcmC7nyhSinQ1PhKDTKgK19Ml3B0WflyWILRyEYK0E5OOwhtz93yEYkI1ZPTDkTrEejteJCNMA4Nhx5/xLlRCNqeu+qPOINc0uJel8/h3vMK2p47RHRGXOUSGuUkvIYubAXOM2uPQyMbNZI9MswoYejOVuCMeIlDKxup88xaJQwNbLV4cxeGpsZG1fkU;ShK1uRN3cx6H+buzg0HoOZG52POMb98aob10q1e3MXh1Z7Fs5HvEoYGuxr9uYuDG0MA5CIO3dhaHTfNFZr7uLQ0Nw3jV35oCUQLVRX73VMNeYuDH36668BGQ9LawlGiyx69qZRjbkLRovYp41gzF08WqjyhbpkQBunbaSSAG1sm9mSA/122n5VUqGFkN0aJUPv8+cEkg4t0pvzKcyIFoKV7Xo6tD9/KOnQ/mmXdGh:qpkRdvf7I3Sof3TBsmKtr/ZVdKh/dPu6dD+aaNkQ/unvZZ0aP+0q6RC+8HKjUZDC2EXox88iqN9rB8Rz)ABJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?ANI)wCAM?ABTy9T5)GFBMVEX::g/dZodGSYrJDPz8+o2pXD/6wnJycNREam?ADOklEQVR4Xu2Y0bLiQAhEbZjE:/jdTM3l+gJMjW1+pDafgQKu0Fg9PbP0Tpu10G7d7TrSbpdB94V2YUkWZfk64ZLSLp3LCHpKqPUFelKo/QFSf9Hqbkl5q0H5u1ro0Q65GTm6QxYj3oQR8xmDVijHEIn/sam+gAdHgrvPqRNotKIgIMGYNURnqNjvyKMfBgliw+Wji0CXKBB1ax8obKkE4V4IbXodAb8t76KjYUOxMQINAKxJbgMlZhqOkFmCSZ7GrFc9kxGUATGSkYJWyKWIUwhqaYTXuIpiZ+TQQP8rz1q90Y2rxMyQ2VJh17z5naMOvnSsG7htWXt2JMeqai1ZnvcD0JSSD6YBMKjdKJ7t4fD8K2JCh57wUbbumM5chFGwPe4YpSosqYT3ijxcvzck1kxDy74xu+5z8vbwhzgKOUqSzrdixKfSHII35AQxVxUb9b5USKd8Boq7IfSODLsLjZJUFm9WSlXmcqCDvmwwkK5OhQZ9NKkYwnCUr5Z29Ao5XQC5CNIAmvlPxfWk31RvFmZJh8l0snb3QGTihlAyRRvI7RjPE1iKvOwxOPlYp/NN5jhkq7VKLGDmammU2/OLIoly587qkepPrR6Q3picyKKfSY4eeOjpGxhlHRYCPJnBdFnIBbs9ChRZd7Qic2J3LUk87gYbMT8oa3p0EsTc5NLwB7wBSe9lKThQ0s6M5vzDlN62AIkPr4dMlNBZ3xzCiZwoSR2Qh85tGEvN2e9eZgiIEmMrLdDfTlIZ2Zz+rik6f9Zyb99/dCOS2IjGInXf1zw9cuHlsUkSKWWFIrYjLFRmj60QcZKSfgvJ8uifSLQjJqOTx1akgl/VKul2hNJUUrJ7pA0Pkrzh5avB1+W1trPY9xy7csD7syyJ+kcPntombt+iVOSwY/aAxNvVniHRolUCUecU1JeGJt9s3ZMjFLdJpde4hskS8p6qI+9WWka1bQw3sPLXS57dto3Dy3RLPttoXRgHH57+qX1oUMb0Pr+ddDcNkZm5rscSrrJbQvyBf6eJKqxOYWolA69SvkzKk1EFHFI+OJDliE6yA3+iBoVJakKE53hySWtI5IKlYOQdi2qG5oIVrg+hD/bvHCzY60hI)ABJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?AMg)/CAM?ACSEXcN)MFBMVEX::ktfzOXv7ZkPzSdvz16Pvu2vfx3fr89/7epProzPTs0vjlwvXKTP/48fzrxP9MDsoJ?ACfUlEQVR4Xu3a6crrIBAGYGdxz3L/d3uahdAjJmP82kqp76+CMPpURNGo9hn/D4ctRn1BOqRJOqRDKCkVtvwupEM6pEM6xMLSCRFEs4zRancTomegdZzITAQhGqPXIkcgUST1zFlPF90nTRQ8PtUdwhrryiEOONEiwYKNdvoghDmFbdGlEMDsAGHzuvdD0qQSWwTRLNTRzSCjP+ZEhmgU/xHbDDIOu8SJEIcFc6ubQWiHWBFCRXM7NYAkUyJAZqEObpDYDEI7RAsQLlxuuhXkcF9D5tJCphXkWO7XECou1AwC4Vim5ZV4CMAny70V5FgkVxCbmUZ/tivORJgallAwS/TfIQghAJ5A7BUEMsQh77bi6bcSkhrpDH4F8eUdm09BoAIirPU2kCG/k4X4bZAw5jsJV5DxByH2SyDyAfiXIVi92Osh8kG+AjIOFRBfs49gAQQSSLZtD2dmc/jAhpgODDmTwaxxOQjSIxCifmTKQEdmHO9B/PgKyLH1nISERZRtL4eMyFh3aISzMW1x1trl9zRNrggCFRApvgQyp3zkPZiwTRFkfgMEdoi7guh7G7sCAaJfCUmPWlcQxaWFYgFEqPfWywcQGMleYSUIvBwCZddB7h5EoQDRtRCZfQ1RcA/ihVOlotdCcNgc0UkQx7cg+hxihJvkd19ia7wDUSBAVKyDyA75Np7vQJQXICpi4uRaCO6OOJU99D;u6DbExM40tabVnv0s5UhVEKQhqSw/GKlgbMGJoJhfZGckvfKFcNbu1nanXqKmz3hQoRo4sNotSt7pgVPjGu/fohhrezUvWgAouOYslSC9Tl0mvrnPh3SIcXpkA7pkA7pkA7pkH9jO092lrWfw)ABJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?AL4?ABQCAM?A.5D9d)YFBMVEX0msFwTFuCzMtMbm7lkbbMgqKrbog4ODuU6ukmJiZuqqma9POTYXaO4N9ejo1SPEVmnZz4u9XWuNGi9fS7+PftocX96/M8UlL1osas4unl/Pz72Of:/+90eDzm8L0nMJFVwVy?ADH0lEQVR4Xu3Z2W6DMBQEUO82a/a12:/ZQkTrP.+lrCwpU8T35gyol6sYxgn+9zPx6aUA7He/rCeyL7Q9/Qck9fiOUDQ+WkL8Tzj2TNMX0hnn8gaw7pC/H8hp70hf/GL/zCL/zC7+pZBEnTbeWlkn3dhfjzOwixOF9Us9QEvut9YRvkz+9ga7c2v5MvBenofBQW5kv7YFyklJbEd3LG2Yb5KMhnr16Mj8hpaCSJXwPTPRdVF562sSGeP7xfl2+BQREcIh9jJBPxkRAfk3x5+T9E8vtV+d7sn0kyH8+8SMG/yCGCzK9f+I7GRy6iScBHovieJah8PPE58PuX4elofL9vpuDLekiXdvb7R9O69Xce7PbbyJ0HVbEqv7lM0+MspiGSX9eVWI7vhBw5QlD4mB5MG36HdaGCe7IF+FJWIsWRjcjHCPsI8pFNuqnj1uS7F7+tGzq/2U6LFfk4QyJ918Twm6196MXqL4tO4M2MWvARQpR33Zz5hV/4hX/eXVkop/2t8bntTxkUrrvzg:xwyj5/powX9+ZFH4+PtkZGALnBswto8KZ7Rg1e2j2GRV27ErWnKA55VMAnhpoMinEB3vVCoV8+YVf+IVf+MrMQ9FoX1BEjTKcGzUWVajgRf4++j1fV7Nwisb4gqHxWxSMHSo6UPAi7u9jUvFbCl/xymdxPrcPx4ZzviHzN5PFUvhtFcfn0LfMPFfgvwmfpsBQ+agAE+YbsFuzCfMRf51fLcpXYwOoMB9qgyFKx0eos28Zho7RRpljmYaP2eea0TeSFiMd1mB2DKZ6CJVv9BAiH6HywYarJfDnBBofScDHDOAJwPSsz+dmiArwAxthAn6KR9fO+IbEb1FVAKTZODnnb0Y5cMwI7zx2hCv8/VX3/RbmqVkp0r7PB4Qelu2yfKVHRKu1bil8pTfj5YqhgPVfGl0h1g9b6A64TvuVWu7IZipEz3Ys+pnHJjhxpuV7P2bo3/GZbp8iQKL5q78sKm2MVuVd95/yC7/wC/9KvxKarAoR37Z20GRViPiyeIYmqwK+69I+oiJZFfBVnfYJG8mq8Auf8D0EMfeTQ)ABJRU5Er@ggg==%iVBORw0KG;)NSUhEUg?AQI)yCAM?ACAnCV7)GFBMVEX:/++vr7q6uqMjIxnZ2fY2NioqKhQUFAPXtNU?ADzUlEQVR4XsXa23KEMAwDUN8S/v+P++QJaKBCu7T4MYU2cxxUL7M2Nyw3qIALwszMt9NK9zBSh5uHnVcef23fx8phy7zy.KscoFgOxeDfdVdgiETTDM/IJQPwzpcU93l4bQZ1zW8mqCumJZT+rqPELQgLNOtjoKWXB7MebggsiF717WOF6tIemnUyZmKvLit9p7tgQfP8Y4+hVHQkYuzO7GZe4LWvG2wjuJVzbOfjguC7MX2SEaQeyenBIlCSIA55pygazxC4O3VBM4I/OBUZDPW7aIEVs3JCdjz5wpBNGY3whjBOBBMcia9d8oJHHvLCeoXAucEyz52BE@7LAwSOuywTiBFaxygi2fIJhb7VvqnCBXo+iTEOtnn?imxK0l06ANrnHM04wDyfb0RavbWJOMAWC2Qb+PYHtIL05kADQ6qQnhoUBywlcIFiDcHxJgHjOCcyOUEm6UfYnBFEdifEkQbjdIfDBN754pkowbxGsSEiVgBUnwKrLAxmwzrJA+KfYYm32DgEfDSagE4IURqMm6/29Q8BHg9r1lBMELFICiMQXCMhoAGHICSZIcgLDSNQJEqgkAh5judPjBNGQAgFGok5QzxDE+ZMQuzVOEIUCn?jUScYYC4R8NFgrp1xAu8DrRBgJOoE8xsCPhpU5xQlcKAWCCASRYIojYAHIrgAChBgpZupBBiJnADrMYLZVBiGh?RQiLASHyHAJMGw5ARYGUIBOiZ7xDgkIy7oFmAr5BdIcBIfC8LcDRoFOMEaym7lwIBRuIQCSwVAnE0GA0iTYdowAkwEkUClwj4aIBvYodEsAxcJog2SJEgBALxSYjFzQmwmaUQYCT++4CM2y/II43AO9YUAozE:mYxEeDag2JoI9BSgQYiS98WAbjBneBABKlNAKMxLcIegvRLQmB?NRI8BIfIEAuTAMOQGGQWgEGIlvEcRCdpg7ZQItCxBw85cIOpCChuHzDwJGYsoEPgiB4jUxDPU4TJUAI3FTCXxzTiCMBgmZLhPMTwmiPiQoiYCPBt1fmSDg045MYEMm6FYPjYD:fiIwPUBGcs/IiiFgD8JLa0TRKG4TmApEjROPEPg5E2M/hWLmEBCCSx1guQEU3ixCSeZEDCBwiVOECURtI1JBLQDrhOYVwuQNwiMwIZKkE8SOIkz/CKowxd1UTvPVpMpOx.b5/GL3sOr+7CEAKRiLlvl5VhvxMML/LKHZH4H+220Z1Ovz0aBInMq/K4GpjH+c3XBkDgG6u8tdO8ORqk6QTTQRjiUCSIeo/Ahj1R+E9RrrC/rx+b5Vw/IzNKKQ)BJRU5Er@ggg==!