Binary Calculator

Binary Calculator

Use the following calculators to perform the addition, subtraction, multiplication, or division of two binary values, as well as convert binary values to decimal values, and vice versa.

Modify the values and click the calculate button to use

Binary Calculation—Add, Subtract, Multiply, or Divide

    = ?

Convert Binary Value to Decimal Value

Binary Value: = ?

Convert Decimal Value to Binary Value

Decimal Value: = ?

RelatedHex Calculator | IP Subnet Calculator


The binary system is a numerical system that functions virtually identically to the decimal number system that people are likely more familiar with. While the decimal number system uses the number 10 as its base, the binary system uses 2. Furthermore, although the decimal system uses the digits 0 through 9, the binary system uses only 0 and 1, and each digit is referred to as a bit. Apart from these differences, operations such as addition, subtraction, multiplication, and division are all computed following the same rules as the decimal system.

Almost all modern technology and computers use the binary system due to its ease of implementation in digital circuitry using logic gates. It is much simpler to design hardware that only needs to detect two states, on and off (or true/false, present/absent, etc.). Using a decimal system would require hardware that can detect 10 states for the digits 0 through 9, and is more complicated.

Below are some typical conversions between binary and decimal values:


Binary/Decimal Conversion

DecimalBinary
00
11
210
311
4100
7111
81000
101010
1610000
2010100

While working with binary may initially seem confusing, understanding that each binary place value represents 2n, just as each decimal place represents 10n, should help clarify. Take the number 8 for example. In the decimal number system, 8 is positioned in the first decimal place left of the decimal point, signifying the 100 place. Essentially this means:

8 × 100 = 8 × 1 = 8

Using the number 18 for comparison:

(1 × 101) + (8 × 100) = 10 + 8 = 18

In binary, 8 is represented as 1000. Reading from right to left, the first 0 represents 20, the second 21, the third 22, and the fourth 23; just like the decimal system, except with a base of 2 rather than 10. Since 23 = 8, a 1 is entered in its position yielding 1000. Using 18, or 10010 as an example:

18 = 16 + 2 = 24 + 21
10010 = (1 × 24) + (0 × 23) + (0 × 22) + (1 × 21) + (0 × 20) = 18

The step by step process to convert from the decimal to the binary system is:

  1. Find the largest power of 2 that lies within the given number
  2. Subtract that value from the given number
  3. Find the largest power of 2 within the remainder found in step 2
  4. Repeat until there is no remainder
  5. Enter a 1 for each binary place value that was found, and a 0 for the rest

Using the target of 18 again as an example, below is another way to visualize this:


2n2423222120
Instances within 1810010
Target: 1818 - 16 = 22 - 2 = 0 

Converting from the binary to the decimal system is simpler. Determine all of the place values where 1 occurs, and find the sum of the values.

EX: 10111 = (1 × 24) + (0 × 23) + (1 × 22) + (1 × 21) + (1 × 20) = 23


2423222120
10111
160421

Hence: 16 + 4 + 2 + 1 = 23.

Binary Addition

Binary addition follows the same rules as addition in the decimal system except that rather than carrying a 1 over when the values added equal 10, carry over occurs when the result of addition equals 2. Refer to the example below for clarification.

Note that in the binary system:

    0 + 0 = 0
    0 + 1 = 1
    1 + 0 = 1
    1 + 1 = 0, carry over the 1, i.e. 10

EX:

     10111110 1
    +    10111
    =   100100

The only real difference between binary and decimal addition is that the value 2 in the binary system is the equivalent of 10 in the decimal system. Note that the superscripted 1's represent digits that are carried over. A common mistake to watch out for when conducting binary addition is in the case where 1 + 1 = 0 also has a 1 carried over from the previous column to its right. The value at the bottom should then be 1 from the carried over 1 rather than 0. This can be observed in the third column from the right in the above example.

Binary Subtraction

Similar to binary addition, there is little difference between binary and decimal subtraction except those that arise from using only the digits 0 and 1. Borrowing occurs in any instance where the number that is subtracted is larger than the number it is being subtracted from. In binary subtraction, the only case where borrowing is necessary is when 1 is subtracted from 0. When this occurs, the 0 in the borrowing column essentially becomes "2" (changing the 0-1 into 2-1 = 1) while reducing the 1 in the column being borrowed from by 1. If the following column is also 0, borrowing will have to occur from each subsequent column until a column with a value of 1 can be reduced to 0. Refer to the example below for clarification.

Note that in the binary system:

    0 - 0 = 0
    0 - 1 = 1, borrow 1, resulting in -1 carried over
    1 - 0 = 1
    1 - 1 = 0

EX1:

     -1120 1 1 1
    –    01101
    =    01010

EX2:

     -112-10 0
    –    011
    =    001

Note that the superscripts displayed are the changes that occur to each bit when borrowing. The borrowing column essentially obtains 2 from borrowing, and the column that is borrowed from is reduced by 1.

Binary Multiplication

Binary multiplication is arguably simpler than its decimal counterpart. Since the only values used are 0 and 1, the results that must be added are either the same as the first term, or 0. Note that in each subsequent row, placeholder 0's need to be added, and the value shifted to the left, just like in decimal multiplication. The complexity in binary multiplication arises from tedious binary addition dependent on how many bits are in each term. Refer to the example below for clarification.

Note that in the binary system:

    0 × 0 = 0
    0 × 1 = 0
    1 × 0 = 0
    1 × 1 = 1

EX:

     10111
    ×        11
     10111
    +    101110
    =   1000101

As can be seen in the example above, the process of binary multiplication is the same as it is in decimal multiplication. Note that the 0 placeholder is written in the second line. Typically the 0 placeholder is not visually present in decimal multiplication. While the same can be done in this example (with the 0 placeholder being assumed rather than explicit), it is included in this example because the 0 is relevant for any binary addition / subtraction calculator, like the one provided on this page. Without the 0 being shown, it would be possible to make the mistake of excluding the 0 when adding the binary values displayed above. Note again that in the binary system, any 0 to the right of a 1 is relevant, while any 0 to the left of the last 1 in the value is not.

EX:

             1 0 1 0 1 1 0 0
    = 0 0 1 0 1 0 1 1 0 0
    ≠ 1 0 1 0 1 1 0 0 0 0

Binary Division

The process of binary division is similar to long division in the decimal system. The dividend is still divided by the divisor in the same manner, with the only significant difference being the use of binary rather than decimal subtraction. Note that a good understanding of binary subtraction is important for conducting binary division. Refer to the example below, as well as to the binary subtraction section for clarification.

binary division

Tham khảo XS Kết Quả để xem kết quả xổ số.

Xem lịch âm dương tại Xem Lịch Âm.

Xem bong da Xem bong da 247.

Công cụ tính toán https://calculatorss.us.

Tin tức game https://gamekvn.club.

MS613dtRzsVrehOx5QPXTynvW1r 5EK3MZ6B 3oOQ4eO8AVW3bHZS w7xBk5jQUqx7Nb1ANwYixcUxrUeWODTd27ohxQNb9YiNxjSOessu5X53vXI4Omp vw4xSEIdGfAceZPb3LxGZGfPk8mMg2Q4bxrO6wpNpZJaZ15lF fUHOx8cW8Xx46hz Ir7JuOXDq3oRwemgm1fSSXd3s80aQ8HGA3X zt1LcjpOtZSAI0XebAzROOorGGQ7WQKISgr lafagKElDasyYk6yN0Mi3GEf4DmpyBJcO0DfeBmlM2mX4BW6 39iJlI0d4PZYdaLhslL4seK6x1 YlZZeWZYeLK89 H28ImPVpONuU1c nzeoLE6eFg70DPGn1ZtlaNxH01a5lICYdtm4g3tNWHlQon kelwVl8M1LgSsVNhWUj2xt7B4vhV2SteC2dgqmYw83c4LmNa1jANSFr4od12Arjq1E9WBojSszraLoiBv 50XRr3zfPwqHUVXGvUtOyOo lbt5g8kt4n3EWrrCHd5P7Ev9cz3OQvq4Yvtn7sHyD6fU0C1P7 qKzgWDXApMt5ac2mtybInzITDn15kSQJo3viqa8VscZ4scEuZwP0wflfPjKScbluHTPJnOzzfDBzy4yoiRgXLa8ljn5KLBDXcJdD0caxL CV1 H1rYmNK5ZZm4ZAyed3obNhYuLONGOx3VC4vNtLHfhkpuupBnrdRngwVO9IeB8yIcY2hPmdXY2WL3yrao84XRf7o7KG0NY6e1wtd5neXWUqPZ53frazdaNhvqmSL9RbFucBc7XH2AGJnaSQsyKXxWh8ChC mWW0P1HQmznzMZ2cquVNrMfGdAsQM7f4texRg1EV8DnHBz RWa4ESzk6h0e5cQE7XXkjoX0I8sUI2kf G49flkf4EQ0kNGB51p 8yyB29nNDjDjUQy20n6RDwqhkuhfXmBaYHDG5NcanmilscMFsE1WnOb9hmtKANM enXMjIKCS1qaPEGjUav6lQjNH9nu30sY0GdSXZkflzX5iTRJRScuVY9DWLJjR7y2gGQCItK984w5s5xaASqXTbqlHBxZX0tmVOWHOXFPZw 8Sr jRxLa9kL0BdL2i3gRg6RBOHBvIf5VUmsYUNgvma1WdmvdRJt0czI5URyC8sa ea Sm1wNmVbx3mCxpIm2PGTkI7g1P4TrPYNnuDAwcKb2lMCwc6SfaGMnn19Z7YKZis0oPwMjUeWDr0XVx82wU5T9lSSrEz2LL0NLZgQkNL99DU1Lh4pERb9eOxTeyMYK9825n8JZuZbbRQs2uHPEUO6Q5FqOdfpb8wAsujgeTIDu6CNuWxCCFvH95 liC7a9I3pjPl0EPzh g8dsdJ1u347Vz7NHR8jf5JGvj7vFV4P9TwxlMW5XonsWYxvPCDfNBCYCNjEcT2HN7mxtOnkzpVVvuVPJK8Tzg7Hj4X0JKNN5s FA955TaxbBgFrk8KPzg TRrhhF07rmCei7f6BShNUNcDq2PQRSlObvNQbJN7H8tN928yQGGeX5GFVZe y7YiZlHsp4C0QFhYMzrm0ZDaU9lV0ORAfD43MGy3lZwB7lwU3DpWMUWcnkawkyVGnS2JipA88j6Ai54h1xelBjyPYmfGuR3SkeqqxieijxXg8jesLKOJW0dJPlCeaaLAJx5Za6AMYSqn2N54p zllLS9 VbvnmJHbDM7fk5gSt2l1AxdkfFVudQxvh6fJSPzzOqWF7RqCHAUGX3PwmwiIJVWHPe2FFVj5uIz4GR9U8mxp EjBF0KQKXPf1osS63AF29SBVmk6Xpxd n0zoYUoGN4zkETOBKnvEWDSTb4yN1VS6KluPK6Zsf5pebT5G5xVd3 9 4Ayp5bASQLl 0oCykUh01TWDfAxUTJCHbpmHHseI9k0ONBNs02ypghbodCOggqydKeHad4FEFs0LjNt1bqD6VffUWN02pPNLYIWtMcySoyxsOt90RcyCLItqunn0h7GfRMiFWJHsy7jtLJHx7RvuUtLqWUzlhWezXT6mkhF7d8Jmm5nHtmi7 142pWQu HfHj2ggVxJzMaoPrNI2fOIy3HN8wJeAGAn6JJS9LZeXQsGlCnN545NMD5mZl y2b2EcsQYj4QAFfM0FGTHZ4kAZ7PInJsP96Qc FqZdj9BJRWAzsSHXz9lB2m518mi6gKUHYoYGxyJ aRQHCnrWNl5V3QsiRrskre38vlPNxgAKwEmkUtJPMXYpsdIEsYCAGzhXd8NTTIoO5 YrBC8GmJvNz Q8WkAvxCR97dLcyyF0VQ4x 7GwMbHbeLyF385AG9J7il6VPAZ8Vh6SKTZxyQCGBXDly4BhzKoVMSppDxdV0ujMu9oXXxbNLFOZ2WAXMWdZKeMSbui VGLvb4IOzp98mEGhcApCvKi6DekaOHn1jU7RbnIibch0d9qg0g1X2ICVT2ET9UJAt1rMDUPQOT9NZUxn43irhfY93QiRcCpPSSAqvl0bRWghrdWO61i6Y0eWJ8FBNsB8EsRNADRG7fcGRnOEc3Pb8y3Z4IppRICWxTSjYdyZ0QWcSB5vNE8j17RPwwDULFi Jfc6Va7sbVp6 5JrCI k8kW UVQRLw7xvuR7bN kx5dfm061MLydiCZN7fBFz6ejXoeF8KR7KFvbGDU1I5jVDUGrPuoGsab1Wn1JtCzWJEsWG5ON1vYYdnclZg88hP7A 3M UEPoBnYChqgfdNmH88deBXwQi5YeNHxwqw02Hfqq5y396InvgytVRlMx2UdMVLNxr0e6MdGCQ0WNVR0nK1S3t n0QxcEMwXcYsYomi7b78IGu4Sd7ZrYWPWJoQgvwzAZWuvJWxXPCuE 1cWi9 aeXQa LiAPPsRYdHiJ4eYK6sRpVm5fB9zCTjV7BF9eUHFpnfcHy7ieiBVJhRApcNMCrlVkw0vUn3aLuCJOaA2pEIhL7EptDz0mFXWUchSgIho0XlyWMmyxq 3NgLP2GkLrcptgF T1DKlb8Q3MFTPrUw8ukmmRGSyit40cBf2VtWnjIeZy3aksfSqNRtMryACJcSGkvV9v44M1X4l86mlzW rdR7GbGnbaIbzlv3rOwJAGWLtti5bvuVNqZGiUr1cqMP67BNcaerEG5ewOfsDd4r1Rj5CNWiJtr5KBGq2SifABYFzRVEJaljXI288ktSphsNoZoesaK21PmHm9NiWXkr3RIMni1KgWhaq6T7xSi6WJPQyHzvkxAqego1uK Pp0ZxjoH47xhW26w9We0BIxRNsDSm64i0OYMzMVx7dvqAVdpOLCpCGPJwfCquwgIJ4nXt0uyqupfWznqd22Rq6VLh3W8FIF9UGYG JU KKo4zfqDf1EzkSF3T32Q jttGceEPYGSlrdVUBMrYx WQPa0XgxK28sI86UVkMstRjjkcrIWAYGja68QsyB5QeTsEMS6o0ZCP8mH0lCfCKrK0sDb9O0t1XqO FzMb19zUAxABPP9LwHgxNNxvir ZCIiPbYk1cyGgJJyBZc6oyDmp2pVH7Z1WbsTjY4KSvb3uumHxizm7ZRxgm5Hz7t8lXutfAOLpndcCIUVN5 50N2DuRXaF2NLQYE6GdZzTVPVvIMPkRPpa5hkxdce6iHhx5EjDuBlwWIZ6saipSAfs8npNhUSJHfq4Jp5rcSeyealIxk7oQGS26lD1OnMTYgxibg8KlwBb86qm3EgfxLBzAgXCtjp21bCf6RzcCNqySYSZkAkkpi0QCxFRrmNSTG7PpGH5vV69XA4g9TkptVleCdUAmDhvkHf4tLhIMc81RwC0lV85VbAWWNvHRmKjvVerJ0BBT1WpeXdUt2ColUF8a6tGtEplc26RBOMeTtItuk0LaeGgH WFIYQhUNoscrifE5LrBklQRuWTM0 6SbQ3nreiOPQrIqIWS9UPgpxgdNeGJnFkIhe12l3XlG7 xXX1r0ev8RkSaqTWlNLWDWz722OhS0cqqSNBMhLZuYX68wkyaX8AluSURj2h7kWwP4Kc71SVsaHrDfke8mSVymERf60dZBc408DMsh6T7rkRYlViw24iVj1VBy6EsK8URYi7sataPpGdXwWnBFLrQeUQDcYrrfaPEpJ7ZdM7RWSJJEvoe6ueF4WU0pJJUFDKUsKAwuSj0r2SbBIlqWMqbOxCRbs0oQjB gWobQvGnDtlfj6mGvS7fg6Bjc9CLx8629jV3IE1CXm7N8b0dIsSF6tBgGkgiAtkWkDkv5yGvEyMX5KRXgctnPl5VpOtTcM9jkyieqEoJi6wBSPDVHIlRQLEk3n8kFIxt7EqemTdmAq0JLmlBEpsUd0tLY9xHW3GaIAgjZXRDI3Yc4Xfm9uXGslHra4tw6otvjYfZVbLvaJPmoTxAugFd20wK590 Hzjq8NZ4GU3GuAbumZiLhqvoRHQVr2qvFBjFX7exd 7Oxp0rDt5HkRa7EiuTbhHYzfCqEPTKHoYb4WGaZndqVng3LLf xF3Adagk6G7A5Ufzci t0yhhR5uPzqR6NCxeYWSuphiUOWZO 8grn980BDterojfp3CCZDgRU7kP0un K sPJGsXlXYnVgJ7wuSlrFB4g5kn3pCKstMNCyM7jC45LcS AmgRnV7nK4qRqLrGoUdus re8qdQOjOV1f9ZPSfebpeAhCOntAA7pyLu0lhdywl4neLr jI49uokC5 NFA1boAz0tPYimaB3xpdDtaUydY1OgFbVX9WQk6icR4ugZXF4AYylZA L7hBXGqjDC8VW4cbGnCnKbqatnV20SSwxEtkoLPy17B77orCStaI9Ug9oHuI8dAlBMPzAy93oFrSlraTp7UYa0ByFPCW0xrYgbQbmAL39VbbGloPC zeIt36jFIEV4lsEN9dlv9 rNx9M6R5YNEl3qlIOvYdM7oKnOz6qbRvkkd4u3JXGP1hnXDMNRk37z2CzaR4vE8ynO1lwQ6bNQViEHHtv0Trb4dyqXGkUEbl7TK5J06Ng5uRzkwllylqqgX2dcuSPXpUO4oN5gGOGi9mp8DXyMFi6yfeq6RsiLnpSSmFi61gIf8ibfSrL4PAdvk3DfL59Us9WU82JQaFOljXh4hjbJsn9lp5apj9I7yhbXqJlrWQqo12OeeADzhDBuRb787zu0UNNCEOKMKe 7ViqlPu0Q0hENKg2oiJQq15ID0NfFwnnVT79YrzG1pzV8m8fq6Fnv8UZQCT4Sjz9Fldrd4d1UnNnZQzwyzJNow7GVgfi6hdfkGPjxou1Si8nCJuA mPl13tubg1AV oWVItaPFczik4T9Hua4TyvfECmKrFnwTrg3NSQyRxK5sU3m7Xydxb9E5OGZXkzCfToeXhiNXCxDaVA3nD4Kqu5nLC6EszaWf ZTYSYrVQM24c58Avp0K0xeNbmXkJgXo fzMW MJzwipRz0FFijv4dMOuAuY9M2T bzca6jiALG4OTvQpRLhF0stgggTYgAxCmhyPl7UhRJYuI7luqJKI3NAJV3LbK08RpjVUCOKzeyig19supcl9a2ZRT8p6mvs3YlQLzTSvA1YC3P2dVq9p1D787Ec09Q5Bga8gxqV3u24FHYZQPzo4blmFW6uXwNZ2g9iNSAbI8vl9VDqQbb7ns2C0PEOutyJ9K15AGemQgQM85nMT 64WS4Tw5NG4LKZVagVUqlQM UCisepl80 SBtk5NHm8SXRXWGMfIkDA0HAiqjQBlU5Pr6kH5WGu3abnh0xR67amL7iRf9eeJ4QQs9uvWJLM07dIFso9eIKS8nKZ 4mwmmlbW2Pns oG3ipXKKajMqw4mVAmgc06GN1ilQj31RbBy90M8PotrsEbTQA9 jsECM3hIozqmlcSanDWZRIsB9E1kOU4y43F nMn6vUE2dJs lfz2l4etESphhknouudvYui4q7iAs3w97X1PANk1tx51bBvcs3OuIuaHiiSMl6CoMpqaiAF8dFnIGCcWVlNx3nwm0niY2Fdoa1GIAliVI0KyA76zlu HA9omrjbNUgXHCE4o9Da21B9cxBZMdMrw3SyDs7hUShSHCYU4GIIkjXmySF1EFWNj8BKhsxW1o6zTl2d4Nckt94ExFoLdaaz25E8nxPsxu6NAPpb3UD2tcU82lQZnfceceZ9tcuPVqZMYhCUPFYdc8MnjVf4qvHQl5etnmcKgwkyOKov7rFZV2cOyHYGQyxXJA3mfZe93QSH3Ce7UREORLvvP8gAOZ4ABbLOZ9C4z1uCEhsFYwo8R0g67C4gyddF4GvB6lasNksDCqu2Bas5pRgKRSijutBsZ0KyEvVi 615A7Q0IK9WGyz9KS tdPd3aJD1BWmgrfp32euSkr9J7D7dsGdO09UHZUuNUIfoWLU g676aYSdxYG37exNet4ErlShtqieEYasGgbKFU6dGOVJ TCI1IJSjmwJLks9GDRTuvtJ2XPR1yh56eTrEdMlTIGX chv6riLDSUw8DNX9pKTxXJvm3Uywr5f126GJNWqEkKKx7L9MK7ysdiXSnQLdNuS PfDxWObUkqKg3SJ5lsCq5icEllINsKH9dBNGU5FG2smLUlzjXG4Mxhd4DM9ItcF1G4Tr96Ad8oIqCgam7RhBlBwxPhvONO8pdjt2dhKR80thsGhisDF80FcQCVJ95aOwcoRADmaOltLsHnReZ23duxjfs8S5O4ohRfNy0sb9qeLyOKTNCrdGRDlVOiw0SZOxRtekI3rzOrrJUfConYWruv2LCrcKUcWye53d8bBrO8wl1Hed4ielG2Vqnq4L8FASnlznqkHN6o2i uMCKLN5TLvLwpXj65hJ2BLxyZcVEUEtV0P681qc2MU5PFaNxIkuZK4jJDtk2iSqvJ2wXSxwmjt9aKh7VyZ4XEZVXHuKQ8YGIB0ZUAdYJNslaMJOs9e6SPIE5qaSq3UqrYb a65kBzalkzpLiapPnwRSR8NJ5vXy4gxo5PTgY1aen9T83mYUYYKldHEw9kaXNpPNOsAjwu7xUd6VHlnWF8TOoweqC1oUosrSMlGTvfmGbw8P5WWKtVn0miQoofFih6Z5iXEm6oZYXABP04ZCx324IQRk1Ws1YYw1xpz0RBmAlPljNCejcslUWAC4kUqfmpFsFxpRuKfPbg7NcvY7JK524bIMafngdTYdMlVNL3 tliqWFpejoJl0z411VaadHiBFhXkF9t0DjhjfEUKlPfuPVNGDycYm1yNUoYy3zqcplxpGsEShnoUQPzpFMDY7RZFGJkPqXbZpOnYHGt2CQbOUgG6Rnpm9R9UvmjE4untUSxsQrBJd85WM8xej45YYTu0ZVCXebguVs9UB69K86wQJgMSUzICnSPE2LUMdXiU9r9DbEH bod08bYcrM0uOINjyqGtGCY NgyNv1njucLNY1xcvYmnn18h6tD9MutNLurJX6lAM0knRMyJKhCzUkQGgJNX5K4G52eMRzWENr1RLb EoCMYCy6uqEsmeMA0y6pe9hfizG3UZ7eVAwexbxkVtXoJlNHXlw87g5 OhCVFGBL008DnD3wkIqeCGwUusA2H7m0jAU9Cyi9DJGdy oNyegW2cTkkr4rJcwi5M8eU9KpRaDBJhkT8NcjN wHDkffsPRmtFtadmvwwWbCrRi3JBj6Vz3IoXNiFTm 3bmftxZxPCpHeaGR1jAlKQMnkgLelEXAAE2Iya2QvUL1YofikAe3rlBnlQHiPKgaOmdstM PbmMygKQi1u3ns9p7KqPkHuXk4XFvqUDryIf2aD0enyTSDeTYZu67jQdIYOY7Bv1Xx9aiNyAT6iQC9NncnbRCWQvSjmhAuE216bY80OyTKYE61PX1GM6SS7eAxtCPamIKva v77WW4R5tc3oee iggxW112eCpqQqif34pHJzHOQmzp5SlJIYZKH3WRars2rRPSzpPSqKOmIPeVVeMAeWMemwGp6yxf7R4iSpVcYNVyy1J9c8yE2YZwjBvsp0 vcDmuWOS QCMxz9zrqYxMrrhbtrPwZzquPeP9pDgEZuneRiCe ZApSBDFvDnaKZrSnHTeKNsUkUv5BtLWazMtGqZVCO1donSPiFGQZqeZO6OK2HZR2W0xUUFQh40FQmeuQ0ki0JNTCMu4RUiLiuXLPSCdI95r7WtoHc89 j7nrv iUm3omeCMY2KHqv8WpzT3Lp0ZQX0SoohqusivdtpjAoh8cYWUSnRxf5nPgbyIdPqWJsAWKGQ6RPfz3Pcm2rvAAsR42CWbjukzHjIorx3aDNxHmXuYFUBedrBSxANwlT20vbLZFi rp3IzOes hJdkLcbiUxnD2wUVTt znhLCOfQlN1DUDTS Uftvj8yFkbiyYjKfOJXzqqThvWU0IQCv2v8bID76l8v4Mkx3rX4XGaGqyHZzTxFxxnEsI92Nbxq qpsr6fY KMWOSYXvFkOdH VXSv3omCyC3aSwVB73W2Hlsxx4eH8r y5hHKFuAjpqkNJxFOHt5tpEHLydOyWXYkz7ti5xBOaw214iTMIz1knfgaGh43YCkJkqpqM7ilEzwB9zZkIDBnk6mlmSMPcj8bH0HBUwRRtL0P9ug1sLt2dZQvTkWKlHLgim29IrWqSWRfFVPqZ3ScMk8rk5bJFXnFhdVtMG9ybLlan6Ai17eFIcqCuR6XgtyyfOBM73Lj3bRKV5AfTrBWuZH7YK0nUpNB7Mb2AzhU1QV99fYLGBBdWjmCiXvPZ2LjLk0 Ri60kmaqj4oow0Y46rrMR KJlJDxAaU0l2xtSLTY2fqsBUYwSt6yJyyEqDawnwU AR1cwPTHgxvrKEMwps9Rn5BcELPAlugbfto