As I mentioned on previous post. This post will describe more about CCD in relation to Inverse Kinematics and Human Body Animation.The basic idea of Cyclic Coordinate Descent (CCD) Method is performing iterative heuristic search for each joint angle, so at the end, the end-effector could reach a desired location in space. By doing iterative heuristic search, we try to find the best location of an articulated structure given its joint angles. This would result in the best (closest) distance of the end-effectors and the desired end points. The calculation is done one joint at a time, and in backward fashion, until we reached the parent joint. For calculating the joint angle, we also give certain limitation for the angle, just like the angle of a human. We implement this, so the animation wouldn’t do any strange movement. The first thing to do in CCD method is to determine the desired location of the end-effector (X). After that, we try to minimize the distance (ΔX) between end-effector position (X^) and the desired destination (X) as low as possible. We do this by increasing/decreasing the current joint angle of the end-effector. When the distance of the end-effector is as low as possible, it means that the current joint angle (Θ) has reached its maximum point, given the current position. Then we move backwards to the upper joint, where we then try again to minimize the distance between end-effector and destination point, but this time only altering the current upper joint. We do this until we reached the parent joint. An example can be seen in the following figure.

For example, we can imagine when we try to move the whole hand. The first thing that we do is to calculate the minimum distance that could be reached by our hand only using the wrist joint. After that, we then move backwards and try manipulate the elbow joint and again calculate the minimum distance that could be reached by our hand. We do this until the last joint is manipulated, for instance, the shoulder joint, or even our backbone joint. Each human body joint are capable to rotate in one to three different axis (3-Dimension). This ability to rotate is called Degree of Freedom of a joint. So each joint could have 1 to 3 Degree of Freedom (DOF). Using CCD method, we try to find the best joint angle for x-axis, y-axis and z-axis for a joint given the coordinate of the destination point (i.e. the best joint angle of each axis that could make the end-effector closer to the destination point). Suppose a joint cannot move in an axis, the best joint angle for that axis is zero. After calculating both three joint angles for each axis, we then calculate the rotation matrix for each axis, using the following rotation matrix:
Where RotX is the rotation matrix for x-axis, RotY is for y-axis and RotZ is for z-axis. We then combine these rotation matrixes into a single rotation matrix:
Where R matrix is the rotation matrix of a joint. Applying rotation matrix of Joint(i) towards the end-effector will cause all the part from Joint(i) up to the end-effector to rotate. After that, the calculation will move backwards to Joint(i-1) and again we calculate the joint angle for Joint(i-1) and calculate the rotation matrix. In order to move end-effector given the rotation of Joint(i-1), besides rotation matrix of the current joint, we also need rotation matrix of the previous joint and the translation matrix of the previous link. The following is the translation matrix:
Where dX, dY, dZ is the length of the link (i.e. the distance between two joints). For transforming the end-effector given the rotation of Joint(i-1), we need the matrix of R(i-1)*T(i)*R(i), where T(i) is the translation matrix from the current joint to the previous joint (i.e. length of the link) and R(i) is the rotation matrix from the previous joint. Keep in mind that the calculation is done backwards starting from the end-effector towards the parent joint.This calculation will continue until we reached the parent joint where there will be no more joints that could rotate after this joint. After reaching the parent joint, the calculated distance between current end-effector location and the desired location should be as minimum as possible.
Cyclic Coordinate Descent Method for: a) Rotational Joint and b) Prismatic Joint
For example, we can imagine when we try to move the whole hand. The first thing that we do is to calculate the minimum distance that could be reached by our hand only using the wrist joint. After that, we then move backwards and try manipulate the elbow joint and again calculate the minimum distance that could be reached by our hand. We do this until the last joint is manipulated, for instance, the shoulder joint, or even our backbone joint. Each human body joint are capable to rotate in one to three different axis (3-Dimension). This ability to rotate is called Degree of Freedom of a joint. So each joint could have 1 to 3 Degree of Freedom (DOF). Using CCD method, we try to find the best joint angle for x-axis, y-axis and z-axis for a joint given the coordinate of the destination point (i.e. the best joint angle of each axis that could make the end-effector closer to the destination point). Suppose a joint cannot move in an axis, the best joint angle for that axis is zero. After calculating both three joint angles for each axis, we then calculate the rotation matrix for each axis, using the following rotation matrix:
R = RotZ*RotY*RotX
Where R matrix is the rotation matrix of a joint. Applying rotation matrix of Joint(i) towards the end-effector will cause all the part from Joint(i) up to the end-effector to rotate. After that, the calculation will move backwards to Joint(i-1) and again we calculate the joint angle for Joint(i-1) and calculate the rotation matrix. In order to move end-effector given the rotation of Joint(i-1), besides rotation matrix of the current joint, we also need rotation matrix of the previous joint and the translation matrix of the previous link. The following is the translation matrix:
What about doing straight lines to the goal. Most of which will of course overs-shoot.
ReplyDeleteAnd decrease amount of joints each time. Until You reach first one.
You get bunch of errors ...
Has there been something which explored such idea?
Regards
hribek
there is a mistake at the RotZ matrix.
ReplyDeletem33 needs to be a 1 instead a 0 !
Great post! It's a shame that I do not understand those formulas and equations.
ReplyDeletelululemon outlet, ray ban, barbour, vans, michael kors, vanessa bruno, nfl jerseys, sac guess, mac cosmetics, hermes, roshe run, louis vuitton, converse pas cher, louis vuitton, michael kors, air force, lancel, lacoste, abercrombie and fitch, michael kors, nike huarache, reebok outlet, nike roshe, nike free, birkin bag, supra shoes, north face, ray ban pas cher, montre pas cher, converse shoes, north face jackets, nike air max, mulberry, north face outlet, new balance shoes, air max, oakley pas cher, louboutin, timberland, nike blazer, hollister, new balance pas cher, nike trainers, karen millen, burberry, hogan, lululemon, abercrombie and fitch, hollister, ralph lauren
ReplyDeletebottega veneta, ugg, louboutin, soccer jerseys, ghd, canada goose outlet, beats by dre, ralph lauren, tn pas cher, juicy couture outlet, giuseppe zanotti, uggs outlet, moncler, canada goose, vans, soccer shoes, ray ban, moncler, uggs on sale, ugg boots, canada goose, herve leger, asics, chi flat iron, gucci, ugg, celine handbags, valentino shoes, canada goose, babyliss pro, juicy couture outlet, ugg boots, insanity, hollister, instyler ionic styler, moncler, moncler outlet, air max, rolex watches, wedding dresses, p90x, mcm handbags, mont blanc, oakley, ferragamo shoes, canada goose outlet, marc jacobs, canada goose, moncler, jimmy choo
ReplyDeleteray ban sunglasses outlet, longchamp, longchamp, longchamp handbags, burberry outlet online, michael kors outlet online, prada outlet, air max, coach outlet store online, cheap michael kors, true religion, toms shoes, louboutin, jordan shoes, nike roshe run, prada handbags, louis vuitton handbags, tiffany and co, kate spade handbags, kate spade outlet, louboutin outlet, nike air max, ray ban sunglasses, polo ralph lauren outlet, coach factory outlet, nike air max, nike shoes, nike free, cheap oakley sunglasses, air max, louis vuitton outlet online, longchamp outlet, true religion jeans, nike free, air jordan, michael kors outlet, chanel handbags, polo ralph lauren outlet online, oakley sunglasses, coach purses, coach outlet, michael kors outlet online, oakley vault, longchamp handbags, true religion outlet, tory burch outlet, gucci outlet, michael kors handbags clearance
ReplyDelete5
ReplyDeletetrue religion
hollister clothing
michael kors outlet online
fred perry polo shirts
chanel outlet online
adidas outlet
kate spade handbags
tory burch sandals
coach outlet online
giuseppe zanotti outlet
chanel handbags
oakley sunglasses
valentino shoes
air jordan 13
gucci outlet
tory burch outlet online
kate spade handbags
oakley sale
kate spade handbags
ghd hair straighteners
air jordan gamma blue
burberry handbags
mont blanc
ray ban aviators
beats headphones
adidas shoes
cheap oakley sunglasses
asics running shoes
michael kors outlet
burberry outlet online
true religion outlet store
babyliss
tory burch shoes
toms shoes
coach outlet store online
coach outlet store online
nba jerseys
burberry sale
kate spade handbags
true religion sale
20150409maoqiuyun
chenlina20150709
ReplyDeletelouis vuitton
louis vuitton handbags
prada handbags
abercrombie fitch
longchamp sale
adidas wings
coach outlet
coach purses
coach outlet store online
michael kors handbags
abercrombie outlet
coach outlet
coach outlet online
gucci shoes
chanel outlet online
retro 11
timberland outlet
gucci outlet
tory burch outlet
jordan 6 rings
hollister kids
michael kors
michael kors
fitflops
jordan 13 shoes
coach outlet
louis vuitton handbags
jordan retro 11
louis vuitton handbags
hollister clothing
soccer jerseys
louis vuitton outlet
true religion sale
true religion
ray ban outlet
abercrombie and fitch
louis vuitton handbags
true religion sale
discount oakley sunglasses
adidas outlet
as
QF0723
ReplyDeletejordan 13
nick foles jersey,eagles elite jersey
cartier love bracelet
nhl jerseys
peyton manning jersey,eric decker jersey,aqib talib jersey,emmanuel sanders jersey,shannon sharpe jersey,louis vasquez jersey
raiders jerseys
golden state warriors jerseys
oakley sunglasses outlet
beats by dre
nike air max uk
russell westbrook jersey
nike free 5.0
toms outlet
the north face uk
larry fitzgerald jerseys,kevin kolb jerseys,patrick peterson jersey,andre ellington jersey,larry fitzgerald jersey,calais campbell jersey,deone bucannon jersey,andre ellington elite jersey,darnell dockett jersey,michael floyd jersey,sam acho jersey
ugg boots uk
mulberry sale
nike soccer shoes
ralph lauren uk
north face outlet store
kate spade outlet
north face jackets
michael kors handbags
robert griffin jersey,joe theismann jersey,andre roberts jersey,sonny jurgensen jersey,art monk jersey,bashaud breeland jersey,barry cofield jersey,perry riley jersey,e.j. biggers jersey,duke ihenacho jersey,josh morgan jersey
ahmad bradshaw jersey,josh mcnary jersey,andrew luck jersey,donte moncrief jersey,delano howell jersey,robert mathis jersey,andrew luck jersey,trent richardson jersey
nike running shoes
mulberry outlet
the north face outlet
coach outlet store
tory burch outlet
manchester united jersey
2015-7-28 xiaozhengm
ReplyDeletecoach outlet store online
borse louis vuitton
true religion jeans
oakley sunglasses outlet
soccer jerseys
gucci outlet
oakley sunglasses
pandora charms
sac longchamp
chaussure louboutin
chanel bags
ray bans
burberry sale
michael kors handbag
coach factory outlet
coach outlet
michael kors bags
michael kors bag
pandora outlet
true religion outlet
michael kors outlet online
toms shoes
cheap ray ban sunglasses
snabacks wholesale
michael kors handbags
mcm handbags
michael kors
mont blanc pens
kate spade uk
toms outlet
mont blanc pen
jordan shoes
ray ban sunglasses
oakley sunglasses sale
burberry outlet
cheap beats
sac longchamp
louis vuitton
michael kors outlet online
replica watches
guowenhao0806
ReplyDeletenike running shoes
true religion jeans
louis vuitton handbags
new york giants jerseys
the north face outlet store
louis vuitton outlet
valentino shoes
north face outlet
mcm bags
instyler ionic styler
north face jackets
miami heat jersey
air jordan 11
abercrombie and fitch
tods shoes
ghd hair straighteners
michael kors factory outlet, http://www.michaelkorsfactoryoutletonline.com
abercrombie and fitch
oakley sunglasses
new balance shoes
michael kors handbags
foamposite shoes
converse all star
real madrid jersey
true religion outlet, http://www.truereligionjean.in.net
nhl jerseys
louis vuitton
the north face jackets
coach outlet
links of london
lebron james shoes
louis vuitton uk
ghd
christian louboutin sale
calvin klein underwear
toms shoes
oakley sunglasses
air jordan shoes
kate spade outlet
ugg boots, http://www.cheapuggboots.net.co
201595dongdong
ReplyDeletemichael kors outlet
michael kors outlet
louis vuitton outlet
louis vuitton outlet
jordan 11s
ray bans
ralph lauren
hollister co,hollister jeans,hollister.com,hollister ca
michael kors handbags
ray ban sunglasses
sac longchamp
louis vuitton handbags
nike uk
nike trainers
jordan 6 cigar
michael kors outlet online
uggs outlet
louis vuitton
true religion jeans
louis vuitton handbags
prada outlet
rolex watches outlet
hollister uk
michael kors outlet online
coach outlet store online
oakley galsses
ray ban sunglass
air jordan 13
michael kors handbags
jordan 4s
ray ban outlet
coach outlet
michael kors handbags
ugg outlet
abercrombie and fitch
201595dongdong
ReplyDeletemichael kors outlet
michael kors outlet
louis vuitton outlet
louis vuitton outlet
jordan 11s
ray bans
ralph lauren
hollister co,hollister jeans,hollister.com,hollister ca
michael kors handbags
ray ban sunglasses
sac longchamp
louis vuitton handbags
nike uk
nike trainers
jordan 6 cigar
michael kors outlet online
uggs outlet
louis vuitton
true religion jeans
louis vuitton handbags
prada outlet
rolex watches outlet
hollister uk
michael kors outlet online
coach outlet store online
oakley galsses
ray ban sunglass
air jordan 13
michael kors handbags
jordan 4s
ray ban outlet
coach outlet
michael kors handbags
ugg outlet
abercrombie and fitch
crx123
ReplyDeleteabercrombie oakley outlet tommy hilfiger online shop results michael kors outlet online ferragamo shoes thomas sabo uk moncler jackets sale oakley sunglasses cheap adidas sneakers into oakley true religion outlet toms shoes outlet pandora juicy couture outlet knockoff handbags context. oakley sunglasses cheap nike factory store pandora prada outlet bcbg max azria michael kors outlet online sale mizuno wave star wars vans shoes beats by dr dre nike roshe run hermes birkin omega watches beats by dr dre coach outlet store swarovski canada prom dresses north face outlet gucci outlet northface coach factory louis vuitton outlet online rayban nike outlet store hilfiger outlet mercurial superfly coach outlet store hollisterco abercrombie and fitch oakley sunglasses cheap polo ralph polo ralph lauren outlet online pandora raybans.com timberland outlet
201510.29dongdong
ReplyDeletemichael kors bags
Montblanc Pen Refills Outlet
authentic louis vuitton handbags
Canada Goose Outlet,Canada Goose Outlet Online,Canada Goose Clearance
canada goose jackets
jordan shoes
Coach Diaper Bag Outlet
ray-ban sunglasses
Authentic Louis Vuitton Handbags Outlet Sale
michale kors outlet
Jordan Concords Low And High
mihchael kors bag
New Michael Kors Handbags Outlet Online
toms outlet
football jerseys cheap
ugg outlet
hollister clothing
Louis Vuitton Canada Official Site
Abercrombie and Fitch Women's Clothing
michael kors outlet
ray-ban sunglasses,ray ban sunglasses,ray bans,rayban,ray ban wayfarer,raybans,ray ban glasses,ray ban aviators,ray ban clubmaster,ray ban eyeglasses,cheap ray bans,ray bans sunglasses,ray ban aviator,ray bands,fake ray bans,ray ban prescription glasses,ray ban outlet,ray ban canada,ray ban sunglasses sale,ray ban sale
cheap ugg boots
Michael Kors Handbags Clearance Outlet
Official Coach Online Factory Sale
Louis Vuitton Neverfull Tote Bag
nike football,airmax,nike free 3.0,nike air huarache,nike womens shoes,nike free run womens
Louis Vuitton Purses For Cheap
michael kors uk
Abercrombie and Fitch Store
Outlet Michael Kors Sale Online
canada goose jackets
hermes outlet
Cheap Ray Ban Wayfarer
2015-12-2 xiaozhengm
ReplyDeletetommy hilfiger outlet
burberry outlet
michael kors uk
michael kors uk
michael kors handbags
louis vuitton
toms outlet
fitflops clearance
coach factory outlet
christian louboutin outlet
cheap jordans
kate spade
cheap ugg boots
sac longchamp
louis vuitton outlet
jordan 13
nike air max shoes
jordan 4 toro
fitflop uk
oakley vault
gucci outlet
jordan 8s
michael kors outlet
ghd hair straighteners
coach outlet
coach factory outlet
louis vuitton bags
pandora charms
louis vuitton handbags
nike tn
michael kors outlet uk
ugg sale
sac longchamp pas cher
ghd
kate spade outlet
ugg outlet
christian louboutin shoes
sac longchamp pliage
toms wedges
nike free runs
20160112xiaodaige
ReplyDeleteghd uk
cheap ray ban sunglasses
mulberry outlet,mulberry handbags outlet
nhl jerseys
burberry outlet online
timberland shoes
true religion outlet
ugg boots
longchamp handbags
juicy couture tracksuit
coach outlet online
ugg outlet
swarovski crystal
michael kors outlet
oakley outlet store
tory burch outlet
cheap jordan shoes
ed hardy clothing
nfl jersey wholesale
oakley sunglasses wholesale
cleveland cavaliers
ugg clearance
michael kors outlet
michael kors outlet
louis vuitton handbags outlet
discount ugg boots
louis vuitton,borse louis vuitton,louis vuitton sito ufficiale,louis vuitton outlet
cheap oakley sunglasses
hermes outlet
ralph lauren outlet
nike outlet
ray-ban sunglasses
ralph lauren outlet
replica watches
ugg outlet
chenlina20160125
ReplyDeletelouis vuitton outlet
michael kors outlet stores
true religion outlet
oakley sunglasses cheap
michael kors handbags
cheap jerseys
coach outlet online
canada goose outlet
oakley outlet
tiffany and co
ugg outlet
cheap jordans
tory burch sale
tiffany and co
louis vuitton
the north face
the north face outlet
coach outlet
ray ban sunglasses
uggs outlet
jordan retro
louis vuitton outlet online
abercrombie and fitch new york
coach outlet online
cheap oakley sunglasses
ugg boots
timberland outlet
polo ralph lauren
coach factory outlet online
ugg sale
adidas originals
coach factory outlet
nba jerseys
michael kors outlet
canada goose jackets
kobe bryant shoes
oakley outlet
ralph lauren uk
canada goose coats
michael kors outlet online
as
fitflops clearance
ReplyDeleteed hardy uk
white converse
nike cortez shoes
louis vuitton borse
louis vuitton
fitflops shoes
coach outlet
ugg sale
white converse
nike tn pas cher
omega speedmaster
louis vuitton handbags
christian louboutin uk
longchamp bags
ralph lauren polo shirts
babyliss hair dryer
asics running shoes
ray bans
michael kors outlet
coach purses on sale
ralph lauren outlet
rolex submariner
vans outlet store
cartier
prada outlet
cheap jordans
canada goose sale
nike blazer
converse sale
toms shoes
hollister uk
babyliss
mont blanc pens
coach factory outlet online
burberry outlet
vans store
cartier love ring
michael kors handbags
20163-15linying
nike free run 2
ReplyDeletetods outlet
coach factory outlet
coach outlet
coach outlet online
michael kors outlet
christian louboutin sale
coach factory outlet
michael kors outlet
ray ban sunglasses
air jordans
coach outlet online
fitflops sale clearance
nike air huarache
ray ban sunglasses
tiffany outlet
true religion shorts
rolex watches
ray ban sunglasses
hollister clothing
michael kors outlet
toms shoes
michael kors outlet
nike free run
jordan 8
ray bans
louis vuitton outlet
cheap oakley sunglasses
michael kors outlet
toms shoes
kevin durant shoes
louis vuitton handbags
true religion jeans
polo ralph lauren outlet
adidas trainers
nike nfl jerseys
nike running shoes
oakley sunglasses
ralph lauren outlet
asics running shoes
20165.5wengdongdong
yeezy boost 350
ReplyDeleteyeezy sneakers
air jordan retro
nike huarache
tiffany and co uk
nike polo
Cheap Jordans For Sale
basketball shoes
louboutin shoes
nike huarache
kobe basketball shoes
fitflops
adidas nmd
fitflops sale clearance
nmd adidas store
nike huarache
http://www.cheapairjordan.us
cheap oakley sunglasses
michael kors handbags
oakley sunglasses
fitflop sandals
marc jacobs
ReplyDeletejacksonville jaguars jerseys
chiefs jersey
bengals jersey
giuseppe zanotti shoes
nike roshe run shoes
minnesota vikings jersey
tommy hilfiger
kansas city chiefs jersey
arizona cardinals jerseys
cheap nike shoes sale
ferragamo shoes
fred perry polo
titans jersey
new york knicks jerseys
cleveland browns jersey
nike mercurial
san diego chargers jersey
oklahoma city thunder jerseys
seahawks jersey
kobe 9 elite
marc jacobs sale
new england patriots jerseys
vikings jerseys
new york jets jersey
los angeles lakers jerseys
jaguars jersey
philadelphia eagles jerseys
san antonio spurs jerseys
nike outlet
boston celtics jerseys
ed hardy tshirts
seattle seahawks jersey
fred perry polo shirts
buffalo bills jerseys
czq20160702
louis vuitton outlet
ReplyDeletecheap ray ban sunglasses
gucci handbags
insanity workout
polo ralph lauren
coach outlet store online
coach outlet
air force 1
lebron 11
adidas originals
tory burch handbags
kate spade outlet
oakley canada
timberlands
polo ralph lauren
toms outlet
christian louboutin outlet
michael kors handbags
supra for sale
oakley sunglasses
adidas nmd
gucci handbags
air jordan 4
adidas uk
jordan retro 8
adidas superstars
adidas superstar trainers
celine handbags
toms shoes
chenyingying20160801
lululemon outlet online
ReplyDeletebasketball shoes,basketball sneakers,lebron james shoes,sports shoes,kobe bryant shoes,kobe sneakers,nike basketball shoes,running shoes,mens sport shoes,nike shoes
adidas outlet store
celine outlet online
mulberry sale
cheap uggs
ugg boots
oakley sunglasses wholesale
air force 1 shoes
louis vuitton pas cher
tods outlet online
ralph lauren uk
true religion outlet
mcm outlet
coach outlet online
omega outlet
ray ban sunglasses
oakley sunglasses wholesale
michael kors uk outlet
juicy couture outlet
abercrombie and fitch
coach outlet store
gucci outlet
michael kors handbags clearance
ugg boots
toms shoes
polo outlet
air max 90
ugg outlet online
mbt shoes
new balance outlet
nike outlet store
coach outlet store
pandora outlet
true religion outlet
chanyuan0806
lululemon outlet online
ReplyDeletebasketball shoes,basketball sneakers,lebron james shoes,sports shoes,kobe bryant shoes,kobe sneakers,nike basketball shoes,running shoes,mens sport shoes,nike shoes
adidas outlet store
celine outlet online
mulberry sale
cheap uggs
ugg boots
oakley sunglasses wholesale
air force 1 shoes
louis vuitton pas cher
tods outlet online
ralph lauren uk
true religion outlet
mcm outlet
coach outlet online
omega outlet
ray ban sunglasses
oakley sunglasses wholesale
michael kors uk outlet
juicy couture outlet
abercrombie and fitch
coach outlet store
gucci outlet
michael kors handbags clearance
ugg boots
toms shoes
polo outlet
air max 90
ugg outlet online
mbt shoes
new balance outlet
nike outlet store
coach outlet store
pandora outlet
true religion outlet
chanyuan0806
birkenstocks
ReplyDeletesaics running shoes
versace
nike store
ghd hair straighteners
michael kors handbags
nike air huarache
cheap nba jerseys
nike outlet store
jimmy choo
cheap air jordan
ReplyDeleteadidas stan smith women
longchamp online shop
kobe basketball shoes
retro jordans
adidas stan smith uk
adidas nmd
yeezy boost 350
discount oakley sunglasses
coach outlet online
oakley sunglasses
ReplyDeletepandora outlet
cheap basketball shoes
cincinnati bengals jerseys
michael kors handbags
oakley sunglasses
michael kors outlet online
ReplyDeletenike air max 2017
michael kors outlet
irving shoes
chrome hearts online
adidas nmd runner
nike air zoom pegasus 32
cheap jordans
michael kors outlet online
basketball shoes
polo ralph lauren outlet
ReplyDeletecheap oakley sunglasses
ralph lauren
pandora jewelry
chicago bears jerseys
skechers shoes
chargers jerseys
true religion jeans sale
bengals jersey
kobe 9 elite
20170408
christian louboutin heels
ReplyDeletekobe 9 shoes
pandora charms
nike air max 90
michael kors handbags
saint laurent handbags
ray ban eyeglasses
nike free run flyknit
adidas nmd
burberry handbags
2017.5.16chenlixiang
michael kors outlet clearance
ReplyDeletejordan 4
oakley sunglasses
oklahoma city thunder jerseys
polo ralph lauren
adidas nmd r1
oakley sunglasses
nike factory outlet
coach outlet
converse shoes
avriq Desktop/Laptop Repair
ReplyDeleteavriq yellow pages
avriq bbb
avriq business services
avriq
Avriq India
new york jets jerseys
ReplyDeletepackers jerseys
bottega veneta
cincinnati bengals jerseys
nfl jerseys wholesale
nike huarache
coach outlet
ed hardy uk
cheap jordan shoes
coach handbags
20180419xiaoke
ReplyDeletecanada goose jackets
ugg boots on sale
longchamp bags
pandora charms sale clearance
ferragamo shoes
uggs outlet online
mac cosmetics
fitflops shoes
coach factory outlet
coach outlet
2018515leilei3915
ReplyDeleteugg boots clearance
michael kors outlet
michael kors outlet clearance
adidas superstar shoes
michael kors handbags
puma shoes
true religion
michael kors outlet online
fred perry shirts
pandora jewelry outlet
ReplyDeleteشركة تنظيف بمكة شركة تنظيف بمكة
شركة تنظيف بالمدينة المنورة شركة تنظيف بالمدينة المنورة
شركة تنظيف بالجبيل شركة تنظيف بالجبيل
شركة تنظيف بالدمام شركة تنظيف بالدمام
شركة تنظيف بالخبر شركة تنظيف بالخبر
I admire the person who wrote this post, you are so talented, hope you will promote them and become more successful. I do not feel sorry for taking the time to read this post, it is really nice and useful to me, thanks for posting it.
ReplyDeletejogos io gratis, cá koi mini, friv at school 2019, abcya 3