The first speaker is Prof. Alfred V. Aho
Prof. Alfred V. Aho is a
Canadian computer science scientist
best known for his work on algorithms and data structures
programming languages, compilers and related algorithms and his textbooks
on the foundations of computer science.
His innovative research in formal languages and compilers theory led to key algorithms for modern compilers and
string pattern matching tools
He has a Bachelor of
Applied Science degree in engineering physics from the University of Toronto
and a Ph.D in electrical engineering computer science from Princeton University
He is currently the Lawrence Gussman professor of computer science at Columbia University
In 2003 professor Aho has received the John von Neumann medal for
contributions to the foundations of computer science and to the fields of
algorithms and software tools
He is a member of the US National Academy of Engineering,
the American Academy of Arts and Sciences and the Royal Society of Canada
His book co-authors include
John E. Hopcroft and
Jeffrey Ullman
So please professor Aho
Thank you very much for that kind introduction
I'd like to begin by saying
how humbled and deeply honored I am
that we're being recognized for our work in theoretical computer science and our contributions to computer science education
through the NEC foundation C&C Prize, it's truly a great honor
I noticed one of the things that
it was on the slide was what advice do we have yet for a young computer scientists
and I get this question a lot from my students of where should I go and work
and my response or answer to them is always the same
Go and work where you can work with the best people in the field and
This has been
both an honor and a privilege for me throughout my entire career that when I arrived at Princeton University
I met Jeff Ullman in the registration line and
John Hopcroft became my thesis adviser
So I started off
very well by being able to work with the best people in the field
after graduating from Princeton
I joined Bell Telephone laboratories in the United States.
I joined the computing science research center, this was the research center that created amongst other things the UNIX operating system
the C and C++
programming languages and it provided me another opportunity to work with some of the very best
scientists, mathematicians and engineers in the world
and it greatly influenced my career and gave me an opportunity to explore problems that I would not have otherwise encountered
So what I'd like to do in this talk is
mentioned some of my adventures
in pursuing the field of algorithms and software
this was propelled initially by the work that
John and Jeff and I did and research and algorithms
and then we decided to codify some of the field through our books and
We were quite gratified may be surprised that the books were
widely adopted by universities around the world and used in the first algorithms courses and
many people meet me
and say "oh, I used your book" and
this may be 10 or 20 years after I've written the book and forgotten what I had written in it, but on the other hand
Another thing that I say to young scientists is
It's important to do good work
but it's also important to teach others how to use your work
because then you start developing a reputation and a cohort of people who can take you advises and ideas
use them to for the betterment of science engineering and hopefully humanity, so
This is the only advice I have for young people work with the best people that you can because you learned so much from them
So what I'd like to do is talk about
the evolution of algorithms
Many people claim that the Internet is
the invention that has had the most impact on humanity
and there may be some element of truth in this
over half the people on the planet are connected to the Internet
And I recently noticed that in Japan there are over a hundred million people on the Internet
This is well over the half the population of Japan
In 34 years this is from the time that tcp/ip was adopted as the bearer service of the Internet
This invention has had profound impact on humanity all over the world
Cellphones may be having an even more profound impact because all the young people that I know use them
But why has the internet become so popular
Well the short answer to this is there are all sorts of interesting applications on the Internet
all of them enabled by computers and communication
But what I think is
underappreciated is that every one of these applications
depends on software
I'm trying to get more respect for software in the world and this sometimes is an uphill journey
We might begin by asking how much software does the world depend on today?
About 12 years ago, I wrote a paper for science magazine
Entitled software and the future of programming languages and in the beginning of the paper I asked three questions
How many unique software systems are in use in the world?
How much does it cost to produce a finished document a tested line of software and
what's the defect density in this software base
short answer to this question is that there's an
incredibly large amount of software in use around the world and the world depends on today,
and I saw this slide on the internet recently looking at the size of some popular software code bases
and they're measured in the tens of millions to hundreds of millions of source lines of code
I might ask
the NEC executives how many lines of software are in your product line I asked this question
repeatedly at
Bell Labs and AT&T when I was there and
Slowly, I got the be grudging acceptance by
the senior management of AT&T saying yes software is very important
and we should pay attention to it
Because if you don't pay attention to it you'll be put out of business by it as we've seen with a lot of
companies around the world and seeing what companies like Google and
Amazon are doing to establish businesses, so
Be aware of the potency of software
There's also a movement because of the importance of software to put
coding as
part of the educational experience in elementary schools and high schools
and
I don't think coding per se
Se is the right way to think about software and algorithms and here is my view of what should be done
You have a problem domain and for that problem domain
You'd like to come up with an abstraction a mathematical abstraction for the problems in your domain
And you'd like the abstraction to be such that then problems can be solved using
algorithms and software systems to solve problems in that domain and
one of my favorite examples of this is
we hear a lot about quantum computing these days, but
Fortunately the physicists developed a very useful
abstraction for thinking about quantum computing
in the first 20 years of the 20th century called quantum mechanics
And if we look at the software systems that are being developed for quantum computing today.
They're all based on quantum mechanics as the
computational abstraction, and I'll say more about this shortly
Well
Just to again underscore the point of why software well because every software system
implements a collection of algorithms so algorithms are the starting point for thinking about software
But you need more than just algorithms per se to put out make algorithms a lie to make them useful you need
programming languages and
compilers
but let's first define what we mean by the term algorithm and
So I went back to one of our early books and it says in there
This is what an algorithm is it's a finite sequence of instructions
Each one of which has a clear meaning and can be performed with a finite amount of effort in a finite length of time
think of an algorithm as a recipe for a computation
And
another statement that we made in an even earlier book is that
algorithms are at the very heart of computer science today. I would say algorithms are at the very heart of the Internet era
But you also need some kind of
engine or machine on which to execute an algorithm and
I just picked four of
the many models of computation that have been suggested for executing algorithms
One of the earliest is just having a person with a pencil and paper
like in Euclid's day or
somewhat after that in our design and analysis of algorithms book we
created a model or used a model called the random access machine, which is sort of an abstraction of von Neumann computer and
if you deal with functional programming languages
Alonzo Church's the lambda calculus is considered one of the greatest models of computation ever invented
And if you're more engineering oriented you can think of circuits with boolean gates
These are the fabric with which computers are made today
in our 74 book
One of the things we did which I thought helped the field enormous
Lee was saying rather than trying to find a solution for an individual problem
Let's look at algorithm design techniques that can be use four whole classes of problems
So this amplifies your ability to be able to create
efficient techniques for solving problems and some of the techniques that we
advocated were recursion
Divide-and-Conquer the fast Fourier transform is just an instance of Divide-and-Conquer
Dynamic programming like the diff program on UNIX is just an example of dynamic programming
You may have heard of the Viterbi algorithm
That's just another example of dynamic programming, but having a name for a general class of techniques
immediately facilitates communication because you can say have you tried divide and conquer have you tried dynamic programming and
immediately you are stimulated to think about how that approach could be applied to the problem domain and
The reason I include this is that my colleague
Jeannette Wing recently who she's our new head of the data science Institute at Columbia
University she gave a talk to
the entire university on data science and
after her talk a history professor from Columbia College came and said
Algorithms are so important
I'm going to teach one algorithm to my history students in the first year of Columbia what algorithm do you recommend they teach so?
She asked some of us in the computer science department. What would we recommend and mev said?
Why don't we pick this very honorable very old?
ancient the beautiful algorithm called Euclid's algorithm for finding the greatest common divisor of two integers and
Here's a rendition of Euclid's algorithm written in a modern recursive form
What is nice about this is that this same algorithm is still in use today? How many algorithms? Do you know that are?
2500 years old that are still in use today
Another important aspect of an algorithm is the amount of time it takes to run that algorithm on a
Computer
And the time is usually measured as a worst-case running time on inputs of size n and
here are some examples of time complexities for common tasks like sorting and
numbers or multiplying two matrices
Or determining whether a boolean expression?
has a satisfiable truth assignment
And I'll say a little more about the impact of looking at the computational complexity of an algorithm in
today's world
In the as soon as I got to Bell Labs
I was interested in finding patterns and strings
There was a program that Ken Thompson had implemented on
UNIX called grep it was one of the most widely used
Algorithms or tools for searching for just simple patterns and text files and
on one occasion
when we were writing the design and analysis of computer algorithms book I gave a talk on algorithm design techniques
a member of the Bell Labs
Technical information libraries came to me. She had written a bibliographic search program that
would search a tape of current technical papers and reports that came from the US government for
Looking for various
keywords and phrases that a bibliography might be interested in and she mentioned to me that
The night before some gung-ho bibliography had specified a search with over a hundred keywords and phrases
And the program had a six hundred dollar limit on how much time could be spent on a search and she said
with your fancy algorithm design techniques
Can you help and I said well have you considered building an atomic on that we'll look for these
keywords in parallel
So you just read a buffer full from the tape
Search for all of the hundred keywords at the same time and then proceed so a few weeks later
She came to my office and said remember that run that used to cost six hundred dollars now it costs
$25 this is the cost of reading the tape
not of how much time it took to find the patterns
I mentioned this to my boss and he immediately said keep working on those algorithms. They're going to be important someday
I got a lot of encouragement to look at algorithms, and then I was also interested in doing more general pattern
recognition and created a program called egrep
I implemented the so called Aho-Corasick algorithm and fgrep and egrep
these two programs are on Linux
And they're still amongst the most popular programs for searching for patterns and text files
Now I mentioned that
in addition to an algorithm you need to implement it in software and
You do this through some programming language today. There are thousands and thousands of programming languages in the world
I'd like to talk about one specific language that I'm particularly fond of on this list a
Scripting language the got to be known as AWK
I'm the A in AWK
W is Peter Weinberger an
K is Brian Kernighan of Kernighan and Ritchie Fame
each of us wanted to have a little language for doing routine data processing tasks and
we wanted the
language to be simple easy to use and you didn't want to write big programs
so I mentioned a
computational model
And our computational model for AWK is that the program is just a sequence of pattern action statements
the patterns you specify, and you look for some kind of
interesting sequence in the input, and if you find it you execute the
association associated with this
It's a very stimulus-response kind of language. It's a very natural human way of doing things
the model of computation was we searched
Each line of every input file for every pattern in the AWK program
If we find a match for the pattern then we execute The Associated action
So if you have a simple file that consists of names and telephone numbers, and if you say
the first field matches
Hashimoto and you say print the second field
Here's a way of finding hashimoto's telephone number now your expert AWK programs that will work on your Linux system
What?
well, or here where some of the there was a
Interesting article in the Lua web page about can we create a
Programming language that could compete with AWK with one-liners
And I found this last AWK program that creates a program to print all unique input lines in the file
It's just an 8 character sequence
If anybody is interested in this I'll explain how that works a little later, but what's of more interest is
the efficacy of efficient algorithms
I came across this paper on the internet that looks for
the regular expression pattern
Often and optional 'a's followed by n 'a's and matching it against a string of just n 'a's is a very
simple pattern matching tasks
What's kind of interesting about this pattern is that if you use a language like Perl or Python to look for this pattern?
when n
approaches 35
It's going to spend a week looking for that pattern if n approaches 40 it'll take a year to look for that pattern
But because of the efficient algorithms inside grep and AWK
those tasks can be done under a
millisecond even for patterns of length 100 so again
I'm putting in a testimonial to if you implement algorithms
Spend a little bit of time trying to make the algorithm sufficient because your users will love you for it
Now comes the task of we have an algorithm, and we want to translate it into a
target program we want to create a source program that
embodies the algorithm and then translate it into a target program that can be executed on a computer and the
device or computer system that does this is known as a compiler and what a compiler does
oh, I should mention that
Another area where I really enjoyed my interactions with Jeff was
Doing compiler research and writing a series of books
Jeff suggested we should put a dragon on the front cover and
these books quickly became known as the dragon books and were used in compiler courses around the world
I mentioned the Japanese translation of our most recent compilers book has the most
Fire-breathing dragon I've ever seen in my life whoever the artist was that created it my compliments to them
But these books are even still used today in compilers courses around the world
in the books
We
showed that a
compiler can be implement as a sequence of phases where each phase
translates a
form of the source program
into a semantically equivalent form of the source program, that's closer to the
model
machine model in the target program and
each one of these phases
uses interesting algorithms the lexical analysis phase for example uses some of the
Fast string matching technology that we had developed and some of our colleagues
used our algorithms to create
generators for these phases
So there's a lexical analyzer generator that got to be known as LEX and a syntax analyzer generator called YACC
I think Jeff invented the name YACC
or at least that's a story. That's attributed to him and these tools LEX and YACC are now available with every major
programming language that's been created since C
So there's a OCaml version of LEX and YACC
Haskell version of LEX and YACC and so on
what these tools, do is allow you to allow students to be able to generate a compiler for a fairly substantial
language in
the course of a semester
I'd like to
move forward to
a very new area
that has a lot of interest around the world both from the research community and from industry
namely that of quantum computing
in the last year or so
More than a dozen companies around the world have announced that they're making major investments into
quantum computers
and
I'd like to
give some background as to why they're doing this and as
An algorithms researcher and a software researcher talk about the new
opportunities that quantum computers bring to the development of algorithms and
compilers for quantum computers
So what is quantum computing?
You can say it's a study of computational systems that use
quantum mechanical phenomena such as superposition
Entanglement to perform operations on data and some of the areas where people
have said quantum computers can have significant impact maybe in quantum chemistry looking for
catalysts to create further
Fertilizers more cheaply than done today or being able to create
Superconducting transmission lines
to reduce the cost of energy distribution
all of these require
the ability to be able to deal with quantum mechanical phenomena in
molecules
However, I should still I should caution that the field is still very much in its infancy
And you shouldn't believe all of the Articles that you see in newspapers about
How quantum computing is going to revolutionize the world I'm going to give some words of caution
But also some words of opportunity for research problems that arise in this field
So being true to my belief that you should first try to come up with a model of computation
Let's look at quantum mechanics
and see what help it can give us in coming up with a model of computation for quantum computing and
Nielsen and Chuang have written the Bible of quantum computing and in their book they
describe quantum mechanics with four postulates
And this is the computer scientist view of these four postulates as opposed to the physicist view of these four postulates which are equivalent
the first postulate says that the state of
An isolated physical system can be modeled by a unit vector in
complex Hilbert space and
This gives rise to the notion of a quantum bit a quantum bit is a two dimensional vector in
Complex Hilbert space so this slide shows that here's a quantum bit
psi which is
Alpha times the zero vector and beta times the one vector in this complex Hilbert space
alpha and beta are complex numbers and the
Sum of their of the absolute values of their squares sum to one
What alpha represents is if you square its absolute value ?
You get the probability when you measure the qubit that it will measure
Come out with the answer of zero when you perform a measurement on a quantum mechanical system
The output is a classical bit a zero or one not a qubit
That's one of the limitations of quantum computing is that the output is very limited on the other hand as I will explain
There are some very powerful
parallelism
Aspects to quantum computing that give it great deal of potential
the second postulate of
a quantum computing is that you can
model the evolution of a quantum mechanical system
by a unitary transform and a unitary transform is one that when you compose it with its adjoint it gives you the
identity matrix
What it also says is that quantum mechanics is reversible time can run forward and backward
in quantum computations
But what this
postulate allows us to do is give us the
types of operators that we like to enshrine in our model of computation for quantum computing namely
Unitary transforms, and here is an example of one very useful operator that most
quantum computing programming languages have namely the Hadamard operator
And you can think of the Hadamard operator as the square root of the 2 by 2 identity matrix
The third postulate of quantum mechanics says how does a quantum computer get its?
huge computational potential and this is says that if you bring two isolated
physical systems together the state of the combined system will be the tensor product of the states of the
individual of the component systems so every time you add a bit to a quantum computer
You double the size of the state space
So if you have a quantum computer with three hundred qubits
The state space is 2 raised to the three hundredth power. That's more than the number of atoms in the universe
So very quickly you can create
giant state spaces with which you can do computation and
basically
computation in quantum mechanics is just rotating this unit vector and
complex Hilbert space according to unitary transforms, and then you may I
Here, I should mention another very useful operator. They control not gate. It takes two qubits as input and
What it does is you have a control qubit that if the control qubit is zero the target cubic goes through?
unscathed and if the control qubit is a 1 then the target pew qubit gets
complemented and
Here you can see in this tensor product notation what the input-output mapping of this quantum
a control not gate is
The fourth postulate that deals with measurement, I don't expect you to read this, but the takeaways from this is that
measurement is not a unitary transform. It's not reversible
it applied to a quantum system
collapses part of the state space of the quantum mechanical system onto one of its component basis axes and
The other aspect of measurement is that it's probabilistic
Quantum a quantum computing is not
deterministic operation you get a certain probability of the output and the way you design quantum algorithm says you want to
move that state vector, so it's close to the answer that you want it to be so when you measure that you get
projection of the
vector onto the answer that you would like
So out of this
computational model we can create our
quantum circuit model of computation for
Quantum computing and this is the most widely used
model for representing quantum algorithms
Quantum circuit has n input lines and then output lines the computation has to be reversible
you can think of a quantum circuit a little bit like a boolean circuit except that the gates are unitary
transforms instead of and or not gates and
Here's a simple example of a quantum circuit
You apply the Hadamard transform to the top qubit
And then you apply a control not gate
To the output of the Hadamard gate and the second qubit and what you get as output is
What's often called the Bell State or an
einstein-podolsky-rosen state and
This output state is an entangled State this is what
cannot be written as a in product form and Einstein used to call these
Entangled States spooky action at a distance
Because if you perform some action on one of the qubits the action
The result would be affected by some correlation on the second qubit
No matter how far away the second qubit was even if it was on the other side of the universe
And you could keep the
Two qubits entangled, this is why Einstein thought it was spooky action at a distance
I mentioned earlier that the time complexity of an algorithm is something that were very interested in the design of algorithms
one of the
developments breakthrough developments in quantum computing was the invention or discovery by
Peter Shor of a factor of an algorithm for factoring integers and
What he showed was that a quantum computer can solve
can factor to an integer in n cubed time and the best known algorithm is on a classical computer are all exponential
And if you're interested in
What happens when you replace an exponential number algorithm by a
Polynomial time algorithm the results can be breathtaking
What this slide shows is that if you want to say factor a thousand bit number
You can do it
More than a billion times faster on a quantum computer if we could build one then we can on a classical computer
and the reason Quantum computing received such a great deal of attention in the mid-90s was a lot of our
electronic commerce
Assumes that factoring is hard
the RSA algorithm
Rivest Shamir and Adleman who by the way won the 2009 C&C prizces developed this
What appeared to be a very secure way of encrypting financial data over the internet, but when this result got published
people got concerned that maybe
RSA will be compromised and the NIST the National Institute of Science and Technology has recently announced a
competition to create a
quantum proof encryption scheme for electronic commerce so
this has already had a significant impact on
electronic commerce in the field here is a rendition of Shor's algorithm
In a high-level language and the reason I'm showing it is that
There's only one quantum step in this algorithm the rest of the steps are
classical computing and
What this illustrates is that?
We're not going to have standalone quantum computers
They're going to be adjuncts to classical computers devices like GPUs that you can
Give a computation to to accelerate the computation, but you're going to need
the classical computer to prepare the input and absorb the output from the classical computer, so
No one is going to run
Word or email on a quantum computer
What Shor's great breakthrough was to reduce the factoring problem to order finding and
He then created the quantum circuit to do order finding in
polynomial time whereas the
Only order finding algorithms that we know of on a classical computer are exponential
Let me just
conclude by
talking about two other models of quantum computing that are talked about in the literature.
There is a
computational model called adiabatic quantum computing what this involves is evolving a
Hamiltonian as in
Schrodinger's equation and letting physics do the computation you evolve and easy-to-prepare
Hamiltonian into a Hamiltonian that has the solutions, and you want the evolution to be kept at the ground state and
the best known example of
a quantum
Computing device that uses this is the Canadian companies D-Wave System's quantum annealer
I might point out that the business end of their quantum computer, which is at the bottom of this tower is kept at
15,000th of a degree above absolute zero
This is colder than outer space so on top of this you need some dilution refrigerators to chill
the niobium rings that store the qubits on those chips
Another model of quantum computation that's receiving a lot of attention these days is
called topological quantum computing and it's being pioneered by the Microsoft Corporation and
This is perhaps the most intriguing computational model that I have encountered
Recently
Horst Stormer and two other people horse dormer was again a physicist who worked at Bell Labs
discovered the fractional quantum Hall effect
So if you take a slab of gallium arsenide chill it
It has to be very pure
But another slab of gallium aluminium arsenide on top of it in the interface the electrons form a new state of matter
Where they events the fractional quantum Hall effect and in this electron
gas you can find quasi particles and
The interesting thing about a quasi particle first of all it's not a particle. It's like a hole in electronics.
It's a state of elect surrounding electrons
so here is an artist's conception of how topological quantum computing works, so here's the
interface between these two slabs of gallium arsenide you have probes you chill it and
You in this vacuum you the quasi particles emerge you bring them near the probes?
You then put a probe on top of one of them, and then you
circle the probe around the other quasi particles and
the operation of
rotating one caused quasi particle around another quasi particle
computes a unitary transform
I won't explain why and I don't think I can explain why it I have to know some really deep
Quantum physics in order to do this, but this is what gives
topological quantum computing advantage over
more classical models of computation because
The quasi particle there are two halves to it, and they're separated when you do the rotation
rotation can jiggle as it goes around the other quasi particle, so
The jiggling doesn't affect what's being computed
It's the completion of the rotation that computes the unitary transform
And then when you're done with the computation you return the quasiparticles and what's left gives you the state
And there is a theorem. I got these slides from
Steven Simon who used to work at Bell Labs at time and who is very interested in braiding
Quasiparticles as the model of computation, and there's a theorem saying that any
Computation can be performed by moving a single quasiparticle around others
Let me just briefly touch on
compilers for quantum computers
we can use the
model of a compiler that Jeff and I talked about in our
Dragon books except at the end we have very different kinds of
Code generation algorithms and optimizations and since we don't have quantum computers
you might want to simulate the target program with a classical computer and
I had a PhD student by the name of Krysta Svore who was looking at if we want to do
top classical quantum computation say on ion trap machines
There's a lot of interest of
We have to put error correcting and fault tolerance circuitry into the computation because qubits are so fragile so
I Chuang predicted that an ion trap computer would be 80 or 90 percent
error correcting and fault tolerant circuitry
What we also said at this time was that
If we're going to create software for quantum computers. We'd like to have a tool suite a
layered hierarchy of tools with interfaces say going from programming languages to compilers to
optimizer simulators
and so on because
We want to be able to experiment with the algorithms before we actually try to find a quantum computer to run them on and
Fortunately since we proposed this tool suite
There's a paper in Nature that just came out two weeks ago. That said basically the same thing
a number of
People have created some of these prototype tool suites and perhaps one of the most advanced is the one that's been developed
Microsoft where Krista Svore went to work after she graduated from Columbia and
They've developed a language called Liquid, and it's a software architecture and tool suite for quantum computing
It has a programming language. That's built on top of F. Sharp
optimization and scheduling algorithms and
you could actually use it to produce
code for quantum devices if we had quantum devices available today and
Microsoft is going to announce next month that a
Quantum programming tool suite is going to be
incorporated into Visual Studio or at least that's what the president of Microsoft said
And I suspect it's going to be based on Krista's work and Dave Wecker's work who was a colleague of Krista's at Microsoft
so
Krista tells me that she can factor a 30 bit integer on her laptop
In a month using this tool suite because they have to deal with
vectors of 50 million
complex numbers as part of the computation
so
They're waiting for the quantum computer to be able to run this
IBM just announced last week that they have a 50 qubit quantum computer
available and you can experiment with some
smaller versions of this already
I might mention that
my current PhD student is
looking at can we do
approximation of combinatorial problems
faster and more efficiently on a quantum computer, this is very much of a
brand-new research area this idea of quantum approximate optimization algorithms was proposed by
Seth Lloyd at MIT
Just a couple of years ago, and I'm sorry bye Edie Farhi at MIT and this is
being explored as
Maybe we can in addition to Shor's algorithm do
Approximate optimization which is difficult
So let me conclude by
Saying we've gone from
Euclid's algorithm to quantum algorithms, but this isn't anywhere near the end of algorithms research
and I think one of the most exciting areas of
algorithms is
putting algorithms into
people
We are already doing this to some degree because we can make prosthetics that interface with the nerves in
the arm and have these prosthetics be controlled by
The human brain people are creating cochlear implants, and I was amused by
This book written by Yuval Harari saying organisms are algorithms and
how we see the evolution of algorithms in the future is I think a space to watch because
they're going to go everywhere. Thank you for your attention
Thank you professor Aho
for your interesting lecture including the latest analysis of quantum computing
For more infomation >> Розыгрыш Ппала на WoWCircle ! Пред БИС гир ! Prot Pala WotLK 3.3.5a - Duration: 2:34.
For more infomation >> DIY: Handmade Squash Gift Card | Paper Craft Gift Idea - Duration: 3:51. 
For more infomation >> ¡Yo No Quiero Ese Niño! 😡👶😠 | Caso Cerrado | Telemundo - Duration: 17:41. 
For more infomation >> TF2動畫 正義的Buff [HDCC字幕] - Duration: 3:13. 
For more infomation >> Scorpion - For the Baby - Duration: 1:49. 


For more infomation >> Scorpion - Jump - Duration: 1:11.
For more infomation >> HeartCatch Pretty Cure ! 2010-2011 15 Vostfr (Pub) (@PrettyTrad) - Duration: 0:30. 
For more infomation >> 5 p.m. Monday evening forecast KOIN 6 News Feb. 5, 2018 - Duration: 3:28.
For more infomation >> Out-of-control truck smashes through carport, lands in backyard of Kalihi home - Duration: 1:44.
For more infomation >> Neighbor Shoots Tires To Stop Burglary Suspects - Duration: 1:50. 



For more infomation >> Geek Squad Same Day Scre...
For more infomation >> 2/5/18 3:38 PM (1318 N River St, Wilkes-Barre, PA 18705, USA) - Duration: 0:29.
For more infomation >> 2/6/18 1:50 AM (108 N River St, Plains, PA 18705, USA) - Duration: 0:29.
For more infomation >> 2/6/18 1:51 AM (1350 N River St, Wilkes-Barre, PA 18705, USA) - Duration: 0:29.
For more infomation >> 2/5/18 3:39 PM (189 N River St, Wilkes-Barre, PA 18702, USA) - Duration: 0:28.
For more infomation >> 2/5/18 3:39 PM (1300-1398 N River St, Wilkes-Barre, PA 18702, USA) - Duration: 0:28.
For more infomation >> 2/6/18 1:50 AM (1300-1398 N River St, Wilkes-Barre, PA 18702, USA) - Duration: 0:28.
For more infomation >> 2/5/18 3:40 PM (71-75 N River St, Wilkes-Barre, PA 18702, USA) - Duration: 0:28.
For more infomation >> 2/5/18 3:40 PM (13-19 N River St, Wilkes-Barre, PA 18705, USA) - Duration: 0:28.
For more infomation >> 2/6/18 1:44 AM (N Cross Valley Expy, Wilkes-Barre, PA 18702, USA) - Duration: 0:28.
For more infomation >> Voici les 11 signes qui indiquent que vous n'avez pas fait l'amour depuis trop longtemps - Duration: 4:37. 
For more infomation >> Les Gens Qui Tirent Dans l'Air Et Dessinent Bullseye Autour De Ça?-Zakir Naik - Duration: 1:47. 
For more infomation >> {Top Santé} Les différents types de pénis que vous pourriez rencontrer dans votre vie - Duration: 7:44. 


For more infomation >> Dangerous Egypt 2018 - Is It Dangerous Now in Egypt! - Duration: 6:31.
For more infomation >> Cara-Caraku Belajar Bahasa Inggris Australia! - Duration: 10:47. 
Không có nhận xét nào:
Đăng nhận xét