jepara13 @ LedakJitu Build a $2 Computer

jepara13 @ LedakJitu Build a $2 Computer

In 1936, Alan Turing conceived of a machine that helped lay the groundwork for modern computing. These extremely simple machines, dubbed Turing machines, are in theory able to simulate the logic of any known computer that can possibly be constructed. While Turing originally conceived of his machine only as a thought exercise and never constructed it, it is possible to build and program a simple version of Turing’s computer for only a few dollars worth of basic office supplies.

This is a fun afternoon project for all ages, and a great way to introduce both kids and adults to the fundamentals of computer programming.

Supplies

You will need:

– A magic marker
– A deck of 3×5 index cards
– Paperclips (optional)

One deck of index cards will allow you to build the machine and write several programs for it. If you want to write more programs, you will need more index cards. If you don’t have index cards, you can use paper instead.

Understanding Numeral Systems

Before you can build and use a Turing machine, you need to know a little bit about number systems. For example, most people know that modern computers are “binary” or that the numbers we ordinarily use to count with are “decimal”, but what does that mean exactly?

The words “binary” and “decimal” refer to the base of the number; the base is how many digits you must count before you roll over to the next digit. Decimal means base ten. Think decathlon or decimeter to remember that decimal means 10. Base ten means you must count ten digits–zero through nine–before you start re-using them and move to the next column. For example, if you start at zero and count all the way up to nine, when you reach nine you run out of digits, so the next number becomes one-zero. (Ten is just a fancy word for one-zero!) Likewise, when you get to 99 you run out of digits again, so the next number becomes one-zero-zero. i.e. 100

Binary means base two. Think of the words bicycle or biplane to remember that binary means two. To count in binary, you count two digits–zero through one–before you start re-using them and move to the next column. To count in binary, first you count zero, then one, then you’ve run out of digits so the next number becomes one-zero. Just like in decimal, every time you run out of digits you roll over to the next column.


Modern computers use binary, but the Turing machine we are about to build uses an even simpler numeral system known as “unary”! A unary numeral system is a base one numeral system. Think of the words uno or unicycle to remember that unary means one. In a base-one system, you start at one, and then immediately move to the next column with one-one, then one-one-one, then one-one-one-one, and so on. This may seem strange, but you use this system all the time even if you do not realize it! For example, tally marks are a popular everyday usage of a unary numeral system–one line equals one number. Counting on your fingers, or using candies or pennies to track points in a playground game are other good examples of everyday unary counting.


[Side note: For those who may be concerned, grouping your tally marks by five isn’t the same thing as a new digit… it’s just like using a comma between thousands-places in decimal. It doesn’t change the number; grouping the digits simply makes it easier to read.]

How a Turing Machine Works

A Turing machine consists of an infinitely long tape, upon which “symbols” (i.e. numbers) can be written by an attached read\write recording head. The head has both a finite state and a finite set of instructions, telling the head what to do when it encounters a symbol on the tape. At each instruction, the machine may modify the symbol on the active location of the tape, change the state of the head, or move the head left or right on the tape.

The finite set of instructions is the key to it all. The idea in a nutshell is that if can you write down the exact procedure for doing something, you can hand that set of instructions to someone else and they’ll be able to do exactly what you did and come up with the same result. Note, that your list of instructions must be finite. “Finite” means “limited”. This is important, because it means that you can’t just go on writing new instructions forever. It means that once you’ve written down your steps, that’s it, you’re done. You’ve got to write down all the instructions about what could happen and how to handle it up front, before the other person tries to follow the instructions. You can’t add more later. A set of instructions like this is called an algorithm.

Think of an algorithm like a recipe. If you follow the exact steps, you’ll get the right answer to the computation; in the same way that if you follow the exact recipe for baking a chocolate cake, you’ll get a chocolate cake. Sometimes, as part of the recipe, you might be asked to make a decision and follow a different procedure based on the current state. For example, in a recipe for chocolate cake, you might be asked to stick a toothpick in the cake and see if it comes out clean. If the toothpick has sticky cake on it when you pull it out, the recipe will tell you to put the cake back in the oven for a bit. If the toothpick is clean, however, the cake is done and the recipe will ask you to take the cake out of the oven. In a computer program, this is called a “branch instruction”. It means, “read the current state, and do either A or B depending on what the state is”. Branch instructions let you make very powerful algorithms.

A Universal Turing machine, or UTM, is a Turing machine that is able to simulate another Turing machine. This is a very powerful concept, as it relates to the modern idea of stored programs. Basically, what Turing said is that if you could come up with a set of instructions to solve a problem, instead of just coding them permanently into a Turing machine, you could write those instructions into a table or tape in a way such that another Turing machine could play them back. This “universal machine” could then be used to solve many different kinds of computations depending on the program written in its instruction table. Neat, eh?

How to Make a Turing Machine

Take about half of your index cards, maybe a little more if you want to compute larger numbers. Turn the index cards so they are taller than they are wide; this will make your Turing machine a bit easier to fit on your desk later. Write a “1” on the front of each index card. Write a “0” on the back of each index card. This stack of index cards will form your “tape”.

Now, take three index cards and draw an arrow pointing down on them. These will be your read\write “heads”. In the corner, label each head 1, 2, and 3. In theory, any computation that can be solved on a machine with multiple heads can also be solved on a machine with a single head, but in practice some things are a lot easier to program if you have multiple heads.

The rest of your index cards we’ll use for writing programs. This is your table of commands or “instruction stack”.
Advanced Stuff: What about the “state register”? Earlier, we mentioned that a Turing machine consists of a tape, a head, a state, and a set of instructions. We have the tape, the head and the instructions… but what about state? Well, for simple programs you don’t really need it–the “instruction pointer” (aka. what instruction you are on) and multiple heads gives you all the state you need so I’ve omitted a separate register. But, if you really want one, you can use paperclips. Simply attach or remove paperclips from the heads to track your state; the number of paperclips denotes what state you are in. Again, you don’t really need it unless you are going to get fancy, so I won’t be using it in the examples.

Set Up

To set up your Turing machine, first you must lay out your “tape”. Place the tape index cards face-down in a long row, so that they all read zero.

Next, place the first “head” index card above the tape. Position the head at least three index cards over from left hand side of the tape. This is your starting position. You don’t want your starting position to be on the first index card, because you need to be able to move the head to the left of start for some programs.


My Turing machine displaying the number ‘2’.

You can now enter an “initial value” into your machine. Your initial value is whatever number you want to perform an operation on. Starting at the head position, flip over index cards so they read “1” until you reach whatever value you want to start with. Remember, a Turing machine uses a unary number system. This means that each 1 written on the tape increases the value of the number by one. For example, if you wanted to perform an operation on the number four, you would flip over four index cards. Your tape would read 1-1-1-1.

How to Program the Computer

To program your Turing machine, you must write a set of instructions on a stack of numbered index cards. The rules for programming a Turing machine are simple. One index card = one instruction. Be sure to number your index cards in case you drop your program on the floor so they don’t get mixed up.

On each instruction you may do any of the following things:

– Read the current value of the tape. The current value is whatever number is written on the tape at the position that the arrow on the head is pointing to.

– Write a new value to the tape. You can flip over the index card that the head is pointing to, to change its value.

– Move the head a specified number of spaces to the left or to the right. For example, you could say “move the head three spaces to the right”.**

– Specify the next instruction to execute. You may “branch” instructions, and specify a different instruction to execute based on the current value of the tape. For example, you can say “If the value of the tape is 1, go to instruction #10. Otherwise, go to instruction #12.”. If you don’t specify an instruction, it is assumed that you mean to run the next instruction in the sequence. If the current instruction can’t be executed, the machine halts.

Additional programming tips:

Always finish your programs in a “known state”. That means, return your head to the start position after you finish your calculation, don’t just leave it dangling out there. You should always be able to run the next program immediately after you finish your last without resetting anything.

– Geeze-o-pete, don’t do the “if the current instruction can’t be executed, the machine halts” thing! That’s called “crashing the computer”. If you mean your program to finish, write “end program” on the instruction index card instead.

Yes, folks, even a computer based on a deck of index cards can crash!

Your First Program: The Incrementer

A great program to start with is an incrementer. It’s a very simple operation, and a good example of how the machine works. It’s also a very useful operation, as modern computers use incrementers all the time for many different things.

An incrementer takes the current value, and adds one to it.

So, what is the algorithm for an incrementer? Well, remember that our Turing machine uses a unary counting system. That means, if we want to increase the value of a number by one, all we need to do is write another 1 to the tape.

I always like to break programs down into their steps before I write them, so here’s the general outline for the program:

– From the starting position, move the head past the end of whatever value is written on the tape.
– Write a one.
– Move the head back to the starting position, so we finish in a known state.

Ok! Now all we need to do is break it down into the individual instructions. So, first things first, let’s find the end of the value on the tape. Here’s how to do this, using the rules we outlined earlier:

#1: If the current value is 1, go to instruction #2. Otherwise go to instruction #3.

#2: Move the head to the right one space. Go to instruction #1.

Excellent. These two instructions will cause the program to loop until the head moves to the first blank space. Once we’ve reached the end of the value we want to increment, we have to add a one.

#3: Write a 1. Go to the next instruction.

Ok! We’ve done it, we’ve incremented the number. That wasn’t bad at all, was it? Some programmers would just end the program here, since it’s completed the task. However, a good programmer will leave the system in a known state and ready to run the next program. We’re good programmers, so we’re going to move the head back to the start.

#4: If the current value is a 1, go to instruction #5. Otherwise, go to instruction #6.

#5: Move the head to the left one space. Go to instruction #4.

#6: Move the head right one space. End program.

This code segment is another loop, similar to our first two instructions. It causes the head to keep moving left until it reaches a blank. When the head reaches a blank, we know we must be immediately before the start. So, we move the head back one step to the right leaving the head pointing at the start position and ready to run the next program. That’s all there is to it!
In summary, here’s the complete program listing:

-Incrementer-
#1: If the current value is 1, go to instruction #2. Otherwise go to instruction #3.
#2: Move the head to the right one space. Go to instruction #1.
#3: Write a 1. Go to the next instruction.
#4: If the current value is a 1, go to instruction #5. Otherwise, go to instruction #6.
#5: Move the head to the left one space. Go to instruction #4.
#6: Move the head right one space. End program.

To “run” the program, simply do exactly what it says on the index cards. If the card says move the head to the right, for example, move the index card representing the head one space to the right, so that it’s pointing at the next index card in the tape. Be sure to follow along exactly.

You can run this program again and again, and increment the number as many times as you like… or, at least until you run out of tape! A theoretical Turing machine has an infinite tape, so it doesn’t have problems with limited storage. Of course, that’s impossible to build in real life. Our tape is limited by the number of index cards we have, but I’m sure you can already see it doesn’t take a very long tape for the machine to be useful. If you want to operate on larger numbers, add more index cards. Be warned though: just because a Turing machine is a very powerful computer, that doesn’t mean it’s a very fast one! 🙂

Next time, we’ll implement some basic arithmetic, and learn how to use our Turing machine to add two numbers together.


** Note: By the book, a Turing machine can only move 1 step to the left or right in a given instruction. I suggest that you allow it to take more than one step at a time; this doesn’t change much computationally, but like multiple heads it makes the programs a little shorter and easier.

5555k
77AGE
7juta
Cakranaga
Cikgu888
GB777
GOBI888
LedakSlot
M200
Mode303
Superplay77
TembakBet
UGERAJA
WB403
WK88
alam78
alexsi17
aronbet888
banggo55
batok88
bebasmax
bewintoto
bighoki555
bold138
bule110
bunda138
bwokwin
cacertoto
cw789
daubet
decaynx
della77
depetoto
dindong togel
dumaytoto
emaslot88
fikbos88
fiks77
firus4d
gc108
genz1221
goltpot
helo99
indomievip
jamin555
jasadewa
jati34
javaslot
jectoto
jerubet
joker811
juragancoin
kaisa328
kapal125
kebayak4d
ketuwatoto
kilo33
kli108
koko1234
komontoto
ledakjitu
loby138
maraton189
martabak88
miletoto
miyototo
mpo8888
mpokris
mustika76
nenastoto
nut777
obctop
omah55
omak55
padora88
pejuang555
pepe168
pialaduniabet
pucaktoto
punatoto
qqvictori
qqviktory
rabelbet77
rajaboom
rajabotak77
rajacabai88
rajacabe
rajaduit
rajamastoto
rajascater
rayat4d
rayatslot
royaleboss
royalqueen
royalqueen888
sejaterabet
seketer88
sembatoto
serumas
slot089
slottoto288
sultan121
sultan14
surgahoki66
surgahoki99
tansenslot
taruh777
terong500
tiketspin
togelf2
tomaxplay
valewin
vitbet88
wangi228
wargatot
wb403blog
wg78
winemas
winmas
wivitoto
x168
166x
200m situs
44gg
661x
666sp
777yk apk
777yk login
777yk slot
77tr
88788
88hw
HT666
MBG11
S61 Rute
YK1
amoi33
aoraliga
apk 777yk
apk s61
atm366
awan16
bango555
banjir66
beras898
biru77
bisen77
bomba16
cakra61
chaisen99
ck78
cuak57
cuan40
cuanunitet
dakintogel
dara23
deras63
derumtogel
dewacaer
dukung138
elang31
fatihtoto
ft8888
gengplay
ggg44
gomax45
gubuk969
hot57
hotspin69
hoya77
ht66
idola29
indohebo
jakpot88
jamur55
jana54
jemarislot
jg88
karinslot
kasih14
katoke
kawanledak
kece110
kei123
kenari66
kenjo688
kenzo668
kerenboss
kislot
kocak10
kokobos
kokopig
konsibet
kudamakau
kupu31
kupu56
lakufit88
langit37
laporbos888
laporboss88
link mpo slot
luber888
mada46
makotawd
malingslot
markaswede
matra69
max47
mbg33
mbg66
monspin
muji188
musa33
na4d
ninja3388
nk026
okesip888
oksip88
operatot
paket110
panenboss77
pasti2000m
pcx56
pecah08
pilar58
pistol44
planet120
polar79
portal76
pro855
putra22
raffi168
rafi166
rajalucu
rajanaga
rakjp
rakuslot
s61
senja35
sgt188
ski388
sma77
smk1
smk2
smkn1
smkn2
smkn3
smkn5
smkn7
sope168
sukacair
sultan923
terong50
toptoto1
totomaniak
tropikana77
tuna76
ukatoto
unggul97
ura79
uuss777
v21 login
wmtoto
wwtoto
yakinboss
yk7777
yy5555
yyy555
zoro92
11xmpo
23nagapiala
700q
999xl
99rk
BYD188
Dewi9000
Hokiemas
P4P4
Totbeta
a200mm
apo303
arwanageming
bajaja4d
bakridom
bejoplay
betton88
bigbas
bos76
bosstop
bowokwin
cepatwin
dangame
desa111
desaku
dudun78
emasku17
fantasyslot88
gagak500
gaspoll189
gledek
gokkenroyal
grandbet
gurih889
guwatogel
hg0909
holly789
in1234
indo45
ink714
jagoanledak
jagopeca
jaiho77
jakpot77
jepara13
juaraslot888
juraganmaen
kaca36
kakemerah4d
ketangbet
ketua100
km55
koboi911
koi588
kp14d
kundumax
lagu7777
lakumenang
laparboss
leba71
lepistoto
lgorex
logobos
mainku
marko515
mashoki889
maskoki789
mekar16
mension2
mewa89
mitra138
molle33
mpopapa
muda77
mulya189
mxslot
nextbet188
nusawan
opahslot
opungwins
otakku
pansit4d
parisclub
pasco4d
pecah444
petir47
pijislot
piket888
planet
pohonemas123
post4d
poster33
pusat04
putih34
pwe128
qezjp
rajabuaya123
rajacabai
rajafa
rika777
roket51
rpko
rpvip77
sampurna178
siapjitu
simbah4d
siokambing2
sltr888
sonic35
sp666turn
spin 789
sr8888
suge133
sungitoto
surga50000
tancap103
tissu4d
uha77
urjapay
v55
v899
warunggoal
ww7777
yy6767
531apk
567apk
68id
777w
Badak137
Ratamax
SPINHARTA
aipa66
ajtoto
asengtoto
ashan88
asiata4d
axita4d
axsiata4d
baber168
badak378
bakricuan
barbatoto
belitar4d
betton99
bukumimpi
buton92
censertoto
civit88
ck789
dadu 110
dd200m
desa 22
desa555
desa66
desaku55
dudung678
dugembet
elexsistoto
exsa303
fafii888
gacorways
garuda304
ggg8
gm199
grendbet88
guri898
hang95
haytogel
hhh8
hiyatoto
ibija168
ibos4d
ic3bet
jabay123
jarispin
jekseltoto
jepritoto
jodulbet88
juragan04
kencan28
ketua101
koi1717
koin555
laitoto
legoboss
lexstoto
ligamaster777
macanasia
maskoki899
mc54
mension
moah4d
monveratoto
mpvtogel
nawin
neowin386
omahcuan
patentot
pcpc777
pika777
pokari4d
punokawan
rajabocil
rajasketer
royalebos
sampornatoto
samurai555
sepaceman
siki4d
siokambing3
sojo88
somattoto
sonic123
surga24
teminal4d
teselatoto
texsastoto
tipa88
tivaslot
totomania
winidnbet
ws055
4dprize
666fw
NE69
asg555
bundaloto
byd118
byond88
cuan42
dawi11
dayak7777
dewilangit
eskobartoto
garuda1945
gas61
gbktoto
genk138
halowin888
halubet77
hansslot
hits138
hkbpoker
hokilucky
indobola338
indopride
ine800
interboss
j888slot
jawa34
jipang288
kindom4d
kingjiwa
km341
koi885
kuba02
kuba79
latah88
lenetogel
mamibet888
maritogel
masterplay999
mataslot777
mbs338
megbet
modalhoki
mosterbola
mudawd.net
newslot888
nusatara4d
nx888
oceh69
ona46
oriental666
pace86
paneng
pausmpayer
payaja
pendektogel
pohonmas123
poka88
pusa4d
pusaka5678
pvp777
rajasimon89
rajawd123
redam88
republikspin
roma37
rubijp
saptoto
scbtoto
segera69
selotgokil
seni118
sensa383
seriwijayatoto
silsil4d
slotmahkota
slotmania98
sobatbola
srikaya77
stars7777
starvegas55
svip 8
t9798
tewe88
togelasus
togelnadim
tomago4d.com
toto platinum
toyota333
turkey13
ujanjp
vistorbet
vonza383
weston88
ws89
2000m
2jari
55rk
absenboss
aifa6
ariatoto
arwana885
astonbet777
atong88
au3288
bantaytoto
blegenbet
bolaemas888
bungaemas
callo11
callo188
callo55
callo66
cece110
ck788
desa178
emas58
facaytoto
gk99
halo99
hoklucky
hot55
idrgames
indosbobet888
jagoanpecah
jeda36
kedei69
ketua01
kodeboss
koi558
kokodi88
kokowins
leba777
lebagatoto
lgorek
lisa23
lokerhoki
luckybest77
mabossplay
mansion2
mapan999
maroko57
matra88
maxwin808
mekwin
nagamas
nagamen
nagapiala
nona73
okeboss
osgslot
pacol4d
pandawa33
panenbos777
pertiwislot
petoto
pica77
planet777
pohonemass
pollototo
primajp
pusatjp66
qtela89
rajamas777
rakyatjepe
ratuperi179
rejeki678
rendom77
roket84
roma43
ropk
rosa111
semut555
sensasi7777
sewapay
sl98
spn89
star17
stk88
superbonus
tarianslot
teenpati
vun606
4p4p
888gggapk
Argatoto
Boxing555
King403
LedakGG
RI889
SUPERPLAY777
a100m
babeh181
bago89
bagogo88
bagogo99
bakcuan
bakritoto
batik186
beloslot
berka99
beton99
betton888
betton999
bmw778
callo33
cektoto21
damai186
desa54
dewi500
dn77
epostoto
faris88
fip805
floxitoto
gacormak
gwp186
hoki55
istantoto
java selot
jituledak
kampslot138
kenangan899
ketuwa10
kingagung
kingjuan
km678
koko36
koy200
kue68
labamajur
lembarslot
lemon121
lemon21
mas73
max398
mekar999
mono777
mpv789
mudahwede
murajitu
mvv789
ninjajago
ns83
ovodewa
pajerotot
pialaduniatoto
pisang50
puryslot
raja555
rajasimon
rakyat63
ris77
riya333
rk556
saduniatoto
sankarbet
seyumtoto
sohototo
tamago4
tapjoy
tatik88
totofyp
uusstoto
vapeslot
vo777
wining303
winrate77
wk888
xr8888
yonek4d
ablaslot
boy308
calo388
ck6789
dana02
delman567
duitku
ggr789
grap138
hokitem
hoklucki
jet88bet
ketua10dua
km914
kuda248
mabosways
makpoker88
maksbet
mbahslot
petanitoto22
pola110
populerwin
presidencc
roma96
rush88
sensajitu
sepam4d
sukabet87
sumba79
teamwd
ug11pay
uh777
uhh77
uk303
unsurtoto
wgk777
winsjitu
xr88
Bosempier
amarta999
amavi5d
at779
babehsugi
badak127
badak178
berewokwin
boksing55
bossvip777
cmcslot
cuby303
cuwanwin
cuwanwin77
d26d
dadu110
danamex777
deso55
emas57
fixboss
flb999
grandbed88
gtr111
jakpot777
jakwin
jangkar76
jaribos
jaya888
jpkucing
jpsonik
kkkslot777
kkkslots
kl21
kolatoto
kora11
kumontot
kurnia989
lakujp
late4d
ldn 11
ldplay
love567
majong50
malio88
mancingduwit
matrikslot
melati45
mvf789
nagaspin88
negobet888
nuvo777
nx333
ohtogel4d
otaku88
panda101
pandalaku08
pcpc7
psgplay
qtgames
rajapolos
rajascater88
ratamak
rxgg
s61situs
se328
segi888
sibayatoto
siokambing1
sizi999
skyidn
spacmen
supra60
tapjoi
terang46
titop4d
togelkris
tol777
topanboss88
tos808
tst138
vinus4d
vivaslot
wf66
wip888
116x
cecewin
234e
34rapk
77uh
88bos
88bosapk
9etapk
9nagawin
GX88
fh6767
ggg888
ggg888apk
ka789
kas99
maxbet57
mulia778
nusaone
nx88
pusatgem
rap89
ri771
rp62
s13apk
sp666luck
svipwins
wk8888
77ag
airasiabet-link
rajalucu-daftar
rajalucu-link
superhoki
wow622
108idr
116xslot
333a
33ag
36ox
389bola
39v
47f
55kr
600m
61s
66ht
6789rp
700m
71h
773k
7777yk
777lucky
77agspin
77best
77yk
888788
8888ft
8888jg
88lx
89rr
999rk
999sl apk
99rk apk
99sx
BWM77
Ledak88
Maskoki
Maskoki88
SutanSlot
Z18
aha4d
akoncuan
amanoke
ang92
anjai4d
apel76
api366
arista888
armpoin
aset56
asia2000
asia54
asiatoto46
asikhoki
atm76
badak01
badak187
badak24
badak31
badak778
badakpro
bagak19
bagusboss
bah777
baja30
baka92
bambu43
bandit14
bara67
bara92
barak18
batik28
batu23
bayarboss
bcidn
bejo13
big162
bini77
biola14
biru54
bisen777
bolahitam
bolamas
bonta54
boss999
bpjs77
caishen1000
carawins
cece71
cece93
cendana34
ceri268
club639
cu88
d59
dah777
danamax
dapurpola68
dapursanjung
dapurwd66
darajp
delta75
dewitoto
dolar46
dor34
dragon110
elang40
empayer888
eropa14
eropa46
eropamax
ex303
f322
fakta138
gamespoll
gas72
gaswin54
gbsky
gcr92
geber888
gelora64
getar88
gg44 apk
gg513
gg831
gocuan
godewa
gogo62
gokkenroyale
goldhoki
gria77
growin
gunung110
hantam10
harta34
hbcmantul
higgs7749
hot678
hugo42
ika10
indomitoto
interwins
jago27
jaguar98
jaya04
jaya53
jeger43
jemadi88
jeno88
jet31
jet61
jitulogin
jos34
jtn79
jultoto
k789
ka988
kado28
kaganda
kakek885
kaku110
kala147
kalek24
kasih72
kaya16
kerbo28
kicaw189
kilat04
kilat110
kinggacor188
kkkslot
km555
km789 apk
koi1234
koin404
koko79
komodo96
kota88
kris34
kuno27
kupu34
lakualamat
lakudanau
lakuemas
lakumakna
lakupendiri
lalumax
laporbos
lava39
lcdtoto
ldn11
lilin199
loren79
lotus97
lume110
luxsury111
macan83
maco93
madalatoto
madu54
mafialaku678
maha24
mahasepin
mahkota34
mahkota818
maja46
majawin
makotaslot
mama75
marlin02
maskoki89
master64
mata02
mawar30
megan17
meja77
melati178
memori888
merak30
mikasa16
mikigaming
msg77
mudawd
multi26
mutan28
nambobet
nasa34
nesstoto
ninja92
nk022
nofeljitu
obor110
ohya77
ohya777
ohya7777
owner34
oyo60
pakboss
pana02
pana21
panda40
panen90
panenbos
paten35
pecah52
pelangigame
perak36
peri53
petir15
petir40
pisangmas4d
pisingyok
plaja4d
planet888
pohon46
pola64
polabar212
pompamax
prabu28
psg75
pus26
putrisepin
r177
rabit89
raja265
rajaclub
rajalucu777
rajapanda
rajapols
rakutoto
ratogel
regen79
rezeki789
rezeki9
rival186
rk99
rkgg
rkok
roso53
rpok
rppk
rrr44
rrzzz
rsnking
rtzzz
rute28
s13
sabit15
salju75
sambarjp
sawer31
sawer36
sayaphoki
sceter
seceter
semar5000
seni67
senja110
senja32
sensai77
ser23
serokboss
sinar29
skena38
skt88
sl44
sora977
spg110
ss80
stk888
suarahoki
sulap388
sumbatoto
sungaimuka
super146
surga14
surya21
t29
t92
t999
t9999
tana56
tar529
tas37
tebaslot
tebu22
tenju01
tgr110
togeltoto138
togeltoto158
togeltoto178
ton76
tone31
top11toto
tototogel158
tt798
tunaitoto
turbo84
ufcslot
useslot
usstoto
v39
v89
vexa88
victory07
vt38
vv55
vv555
w777
we308
wow62
wp888
x1166
xd880
xuxu138
yan789
yy555
zoro75
ledak88

Tags: , , , , , , , , ,

One Response to “jepara13 @ LedakJitu Build a $2 Computer”

  1. evan Says:

    they should give these to disadvantaged children in africa rather than that green abortion–the “100 dollar laptop.”

    for two bucks a pop, you could educate a whole village for one c-note.