Man cleaning a window with a squeegee
As mentioned previously, I’ve started a new blog elsewhere. Still in its infancy, so there are only a handful of posts up yet.

I noticed early on that I was getting quite a bit of traffic though, even though I hadn’t pushed articles to social media; a blog with only one or two posts isn’t that attractive, so I figured I’d settle in and get the furniture arranged, so to speak, before seeing what sort of audience gravitated there. But the numbers were odd.

Read the rest of this entry »

MySQL Blogging

Author: Jeremy

I’ve taken up residence at https://blogs.oracle.com/jsmyth/ for all my MySQL bloggy goodness. I’ll still blog about all of the wide and varied other things here, because it’s entirely possible that the world of MySQL users out there don’t really care about Perl or how to configure Portugese Model M keyboards in Linux.

In the meantime, expect to see a bunch of different questions and answers over there that have cropped up over the last while in my MySQL course writing, questions from students and instructors, and interesting issues that pop up when challenges and conundrums face someone who isn’t a MySQL expert but has to work with it (hey, that describes about 95% of MySQL’s userbase, right?).

IBM Model M, US Layout

Lately I’ve started a small collection of IBM Model-M keyboards. Well, two. And a modern Unicomp Model-M that I somehow managed to murder. The problem with the original ones is that they’re not the usual layout, for me. One is a Portuguese layout, and the other is a US layout. Both have the problem that one of the keys I need isn’t available. The key in question is the one I’d ordinarily get “\” and “|” from. This key is at the bottom left of the Irish keyboard layout (and the UK layout, which is very similar), next to Z. The key does not exist on US layout keyboards. There is a key with those two symbols on it, but that key serves the purpose of the Irish “#” and “~” key, both of which are found elsewhere on the US keyboard layout. In short, we have an extra key here that US keyboards simply do not have.

Sorry about the long pre-amble. Here’s the meat: on my main computer (a laptop that travels around with me from desk to desk, where I have my various Models-M), I run both Linux and Windows. And, being a bit of a techie, I need both “\” and “|” to work for me, so I put them under the key to the left of the digit “1″, the one that usually does “`” and “¬” and “¦“. Here’s how I did it.

Short version.

In Linux:

xmodmap -e 'keycode 49 = grave bar grave bar backslash brokenbar"

In Windows:

Download and run the Microsoft Keyboard Layout Creator, and create a new Layout.
http://www.microsoft.com/en-us/download/details.aspx?id=22339

Read the rest of this entry »

Privacy: a photo by alancleaver_2000

Let me start with a little imagination. An analogy, if you will.

Imagine, if you will, that you are on holiday. You want to send a “wish you were here” type message to your friend back home. You have two choices: a cheapish picture postcard, or a more expensive sealed envelope. What do you choose? If you’re like the vast majority of us, you will likely choose the postcard, for both picturesque and cost reasons.

On the other hand, let’s assume you want to send your credit card number and salary details to an insurance agency. Again, do you choose the postcard, or the sealed envelope? I will not insult your intelligence by saying what the “right answer” is. I will however allow someone else to continue this analogy on my behalf, with a slight piece of satire:


the government has announced that it will soon be mandatory to use state-approved envelopes to send all mail. these new envelopes will be entirely transparent when viewed under a federally produced lightbulb, but there is no need to worry about these lamps getting out to bad people, since it is time-tested proof that all government employees are completely honest and lack all self-serving traits present in every other human being. besides, it’s for your own good and protection! and if you have something to write that you don’t want everyone to read, maybe it’s time for that all-important self-examination to reveal your underlying paranoia complex…

(quote taken from a Slashdot comment, written by someone called CrudPuppy)

How does that make you feel? If you honestly sat down and thought about that eventuality, would you be happy about the idea of someone, anyone, being able to read your most private thoughts and words? Is it fair to expect that once it’s written down, “The Government” — whoever that may be at the time — has a right to view it? The fact is, some governments are currently attempting to change their laws to curtail the individual’s right to this sort of privacy, whether you want to believe it or not. For example, the American Wiretap Bill prohibits using emails as evidence without a warrant, but this article shows that the authorities want to read parts of such communcations without a warrant. Read the rest of this entry »

'Diversity Clucks' by chrisjfry

In conversation with a client recently, we discussed the issue of fragmentation in the Java EE space, and how it impacts large organisations. Java EE (previously J2EE) is a set of specifications and standards, with no definitive IDE or application platform. This is by design, and is in contrast with .NET development, which (almost) invariably takes place in Microsoft’s Visual Studio IDE, and deployed to Microsoft’s Internet Information Server application platform runnning on Windows. Java EE systems may, on the other hand, be developed in Oracle’s JDeveloper, IBM’s Rational Application Developer for Websphere, IntelliJ, Eclipse, or NetBeans. Applications may be deployed to Tomcat, BEA Weblogic, IBM Websphere, JBoss, Glassfish, Oracle’s Application Server, and so on.

As an example, consider a large organisation with several development projects on the go at any time, each one started by a different owner/business unit, and potentially hiring individual contractors to get started on the bones of the project, from a spec they’ve created together. The contractor often chooses the framework based on their own experience, and so begins the tie-in for that particular project. As projects mature, their internal development staff take over maintenance of the project, and discover that they have to learn another framework, platform, or even IDE as they transfer between offices.

One solution employed may involve hiring the same large consultancy firm for many of their projects. This ensures consistency — a large consultancy firm will have internal development guidelines and standards — but is quite expensive, so far from ideal. Many organisations hire individuals to provide the expertise required to kickstart a project, and then add their own developers once the maintenance phase arrives. This is where the fun begins.

A modern Java EE application might use JSF or even Visual JSF. Or maybe Struts 2. Or perhaps Spring MVC. Each of these relies on a proper build process, so maybe we’ll use the IDE to build it. Netbeans. Or perhaps Eclipse. Or maybe an IDE-independent build tool, like Ant. Or perhaps Maven. Then we’ll deploy it to a suitable application platform. Glassfish, maybe. Or JBoss. It’s no longer enough just to learn the language; one must also learn the multivarious frameworks, tools, platforms to get one’s work done. One client told me that of the ten developers they had working in their Java EE team, each one had a distinct setup on their workstation. And this was on the same application, all using the same tools and the same platform. So why not just stick with one framework?

Consider Struts. Well, actually, we can’t, and that’s sorta the point. Struts (1) and Struts 2 are significantly different from each other, to the point that migration from Struts to Struts 2 is quite tricky. The developer’s website links to a three-hour tutorial, a three-part guide, and in the Migration Strategies, suggests (as its first option) running Struts 1 and Struts 2 in parallel. So, I think it’s fair to say they are sufficiently different platforms as to be considered separate.

Having said all that, I still think it’s a good thing that this diversity exists. Yup, what I called fragmentation earlier is now diversity. Look at the open source world: the Linux kernel has had thousands of developers working on it, yet is as enterprise-ready (if not more so) than many more monolithic systems. There is no single Linux distribution; Red Hat, Ubuntu, SuSE — all have carved their own very large niches in the industry, and each with a large degree of success. Sure, a project may start and then flounder as another, similar project dominates the niche. Perhaps one or two major players succeed at the expense of others, and we end up with competition in the space, with quality improving on both sides; KDE vs. Gnome, Eclipse vs. NetBeans, .NET vs. Java EE. Evolution is needed to get to that point, and that’s where diversity is a good thing.

Therein lies the challenge for large organisations. The results of such evolution are good for the industry, but the process of evolution is painful. Your modern large organisation is not the instrument of change and improvement; you are not in the business of helping the world decide which framework is the next big thing. You need to make the decision: either reap the benefits of the last generation’s evolution, and back the previous winner, or pick one of the current generation of technologies and stick with it. This is the challenge of conservatism vs. early adoption, but it’s a nettle that must be grasped.

Photo “Diversity Clucks” by chrisjfry

Brian's Classroom Support Calendar, StanfordEdTech

Don’t use anything fancy like Microsoft Project. The trouble with Microsoft Project is that it assumes that you want to spend a lot of time worrying about dependencies….I’ve found that with software, the dependencies are so obvious that it’s just not worth the effort to formally keep track of them.

– Joel Spolsky, Painless Software Schedules

That article has many other great insights, including:

If you are sloppy, and pick big “chunky” tasks (”implement grammar correction”), then you haven’t really thought about what you are going to do. And when you haven’t thought about what you’re going to do, you just can’t know how long it will take.

…and

Many rookie software managers think that they can “motivate” their programmers to work faster by giving them nice, “tight” (unrealistically short) schedules. I think this kind of motivation is brain-dead. When I’m behind schedule, I feel doomed and depressed and unmotivated. When I’m working ahead of schedule, I’m cheerful and productive. The schedule is not the place to play psychological games.

As the article is over ten years old, Joel has end-of-lifed it, and replaced it with this one from 2007. I still like the original!

Photo: “Brian’s Classroom Support calendar” by StanfordEdTech

Another one I couldn’t search up information on, so putting it here for posterity.

I was playing with an elderly blogging platform called Blosxom. It’s really simple to use, although that, combined with its age, means it’s not up to the current status quo. Regardless, I found it fun to play with. Plus, it’s written in Perl, and everything else is PHP these days, so it was a nice novelty.

Now, one of the things it expects (as does the rest of the internet, apparently), is that the CGI file may be treated as an application, folder, or directory on the web. Like this:

http://example.com/blosxom.cgi/2010/06/28#Post

Now, the script itself is the cgi file, a file called blosxom.cgi in the root of my server. As you can see, it looks like a directory in that location, and according to the Internet, that feature should work, passing any “trailing pathname information” (as Apache calls it) to the script via the PATH_INFO environment variable.

Apache didn’t think so.

Now, attempts to google for “apache trailing slashes” or “apache cgi trailing slashes” or anything like that ended up fruitless. It shames me to say I spent over an hour investigating things like ExecCGI, mod-rewrite stuff, and all manner of other things to try to find out why that feature wasn’t working for me.

Eventually, I did what I probably should’ve done an hour before, and looked at the server error logs. Yes, they existed and were visible. I didn’t think that particular host would let me see them — it’s a free host — but I was wrong, and they surprised me yet again.

So, here’s the key: the host had switched off the AcceptPathInfo directive. Ordinarily, that’s left to the handler concerned (CGI, PHP etc.) to decide, which explains the ubiquity of the “on” setting, and the lack of anyone complaining when it’s switched off in various places I looked.

So there you have it, folks. If your CGI scripts don’t work when you have trailing slashes or trailing path info after the script’s name, don’t get lost in RewriteRules – have a look for AcceptPathInfo.

SIPDroid Locking up Audio

Author: Jeremy

When running SIPDroid on my XPeria X10 (although I’ve heard of other Android phones doing the same), it appears to make one call, then after hanging up, it, well, doesn’t hang up. In short, SIPDroid seems to lock the call in place, where it continues even though it’s ended.

Not only that, but the rest of the audio on the phone stops too, until a reboot of the phone.

Here’s how I fixed it:

  • Make a call.
  • Note the codec it uses (shown under the call box). It will be something like “PCMA (64kbit)” or “PCMU (64kbit)” or something else technical looking[1].
  • Assuming the call fails (which is, after all, why you’re here!) go into the settings, choose “Audio Codecs”, and disable the codec you just noted. In my case, I set “PCMU (64kbit)” to “Never”
  • This is the annoying bit. You’ll probably have to reboot the phone if SIPDroid won’t let you make another call.
  • Once you’re back in, make another call, and note the codec. If you’re lucky, you’ll have a successful call, and no lockup. Success!
  • …on the other hand, if you’re like me, you’ll have to repeat this process until it works. For me, I hit GSM before it worked.

Of course, there are other known issues at the moment, including one-way audio, issues with registering with the VOIP server, and so on. I didn’t have these issues, so if you are, you’ll have to look elsewhere I’m afraid!

[1] …where “technical looking” means stuff like G722 HD Voice (64kbit), silk24, silk16, silk8, speex, GSM, BV16, or other supported audio codecs.

(Writing this here because I haven’t seen anything similar after much googling. Hopefully it’ll help someone!)

Some programmers are happy to do as asked, following the spec, and building useful code that does what it’s supposed to do, and no more.

Other programmers are happy to question the spec, to discover business functionality that may not have been known, and to engage more in design.

Sometimes, and ideally, these functions are separated; you have a programmer who solves problems made clear in the spec, and you have a software project manager/domain expert who designs the solution to be implemented by a programmer.

Having said that, it’s not unusual to find the two functions in a single person, particularly a developer with more experience within the problem domain (in fact, it’s hard to find a project manager who’s experienced enough to design a good solution, who isn’t an experienced programmer).

Standard project management technique would suggest you start with the scoping, and the environment (the “why” and the “what”), and only when you get to identifying the work, to get down to the “how”.

Frequently, the guys involved in organising the scope are not the guys doing the actual nitty-gritty work, so by the time they’re involved, the “why” and “what” should ideally have been specced out.

With software development, particularly with iterative methods, the “what” is usually figured out as part of each iteration, which lets the “why” leak in, and should ideally involve lots of two-way communication between the developers and the client.

This isn’t always how it works though. As I said above, it’s an ideal world that can separate the functions, and often a programmer with enough experience to connect business analysis with programming will already be filling that role in any given project.

Let’s say you want to insert (or, for our example, update) a whole set of random numbers into a table.

You may try this:

UPDATE TABLE SET rnum = RAND()

…only you find, to your amazement, that SQL Server has put the same number into each row.

Hmm.

In SQL Server, when rand() is called multiple times in the same query (e.g. for multiple rows in an update statement), it usually returns the same number.

Two problems:

* Firstly, the rand() function returns a number between 0 and 1.
* Secondly, when rand() is called multiple times in the same query (e.g. for multiple rows in an update statement), it usually returns the same number (which I suspect your algorithm above is trying to solve, by splitting it into multiple calls)

My favourite way around this problem is to use a function that’s guaranteed to return a unique value each time, like NEWID(), convert it to binary, and use it as the seed.

UPDATE TABLE SET rnum = RAND(convert(BINARY(16),NEWID()))

This works because NEWID() is guaranteed to return a new GUID (a globally unique 16-byte number) each time it’s invoked. We must convert this to binary before using it, as RAND() won’t accept GUIDs as its seed.

So, although RAND() ordinarily gives the same random value for each row in an update, we get over the problem with RAND by giving it a different seed for each row using a function that gives a different result for each row.

  • download dolby sound test
  • eclipse 2.8 download
  • download speed dating legendado
  • twista emotions download
  • dota 6.09 download
  • sony ericsson cedar wallpaper download
  • double capricorn album download
  • download song condom by honey singh
  • download build system toolkit
  • download trapped in the closet album
  • download regina 3d launcher pro 1.1.5
  • earthquake free download tinie tempah
  • free download nescafe theme song
  • download babbu mann chan chandni
  • xtrap manual patch download
  • download terri clark free
  • blackberry desktop manager download windows xp
  • one piece ost download zip
  • download seventh day adventist hymnal powerpoint
  • gateway power dvd download
  • download naruto classico 4 temporada
  • download snoop dogg young wild and free
  • morph my baby no download
  • enigma decrypter download
  • download instant search feature outlook 2007
  • download family outing korea
  • autoit recorder download free
  • gra jumper download
  • download driver canon pixma mp287 gratis
  • download lincoln lawyer rmvb
  • green lantern download movie
  • download autobiography of benjamin franklin pdf
  • android 2.3 zip download
  • genius flashcards download
  • download cung hoc tieng han quoc
  • download billy graham classics
  • cox hinkley theoretical statistics download
  • download home office student 2007
  • download divine wind eu3
  • khleo thomas lost download
  • honestech vhs to dvd download gratis
  • blink 182 greatest hits download zip
  • awkward video download
  • download patapon 2 demo save data
  • download melodi grand prix 2011
  • soopafly g funk martian download
  • pod wildfire download
  • free download logbook excel
  • download space images
  • panasonic g30 download
  • download tum yaad aaye songs
  • download pretty woman song free
  • download ios 5 australia
  • download 2face something want to happen
  • download framework 2.0 sp3
  • download security resume
  • download splitsvilla 4 song by agnee
  • free download untouchable by taylor swift
  • download scientific calculator for windows 7
  • paul mccartney wanderlust download
  • dx9 free download software
  • akon eenie meenie download free
  • download mastering c by venugopal
  • toda forma de amor download rmvb
  • download lagu cinta yang lain baby
  • horizon 360 download windows 7
  • download tok when you cry mp3
  • gpsmap 76 map download
  • shotokan karate ebook download
  • download nero compatible with windows 7
  • circo motel download
  • download cleaner & license reset.app
  • being human 2x13 download
  • free download wait david archuleta
  • ff tisa font download
  • 2735865083
  • download mxit for nokia c5-03
  • shogun 2 darthmod 2.8 download
  • download putty win64
  • download bheegi bheegi rato me
  • download o encantador de cavalos legendado
  • bram stoker's dracula download
  • download installer eclipse
  • pool of radiance c64 download
  • thomson wifi download full
  • download cai luong khong loi
  • free download of vaada raha sanam
  • download lamborghini mercy video
  • xtc deutsch download
  • download merlin season 6
  • download greenpoison now
  • ps3 3.70 jailbreak download free
  • meshuggah the last vigil download
  • download theme dep cho iphone 4
  • download costel biju mama mama
  • download kaise kahe kitni mohabbat hai
  • download iron speed designer 6
  • stopwatch download s60
  • download atomic email hunter 3.40 cracked
  • dawson's creek direct download
  • wdm player download
  • download pokestarter rpg maker xp
  • pitbull global warming mp3 download
  • wow download keeps freezing
  • download gilberto gil viva são joão
  • download joe frazier vs muhammad ali
  • download gratis mp3 cakra khan
  • download muzica din trompeta
  • download crosshair counter strike source
  • hotkey download in dota
  • download cd só 80
  • group policy cbt download
  • download latest nebula
  • download custom 4.1 ipsw
  • farma mania 5 download
  • hardstyle download free
  • download font itc souvenir
  • dynasty warriors demo download
  • aviation week download
  • download sandman comics pdf
  • l'aura discografia download
  • betting assistant wmc 1.2 download
  • download tune mere jaana male version mp3
  • lcg jukebox v2.41 download
  • ocean current data download
  • pokemon shiny gold download emulador
  • zaklínač 2 patch 1.35 download
  • download zeds dead here comes the boom
  • download waka flocka no hands free
  • download laila biali
  • download aku suka caramu mp3
  • download serenade fruits basket
  • 2770942507
  • allods russo download
  • download bukti potong pph 23 excel
  • content-length php download
  • download excel loan amortization
  • download taeyang solar album rar
  • smurfs season 3 download
  • download sonic youth
  • catan download crack
  • walkera cb180lm manual download
  • download alejandro mp3 lady gaga
  • download bộ c i audition
  • download star wars battlefront 3 psp
  • download flv to 3gp converter with crack
  • download carmageddon 2 windows 7
  • 1257 middle europe download
  • download noorie remix
  • jogada decisiva download dublado
  • dragon nest trailer download
  • top eleven download for mobile
  • octopus box 1.6.0 download
  • bagda montana download
  • 9069476662
  • cirque du soleil alegria download rmvb
  • internet download manager 6.07 patch
  • bitstream vera sans roman download
  • download portal 2 credits song
  • husain salafi speech download
  • id vault software download
  • download fairy tail in avi
  • download dreams from my father pdf
  • download top 100 hip hop songs 2012
  • config win h download
  • sparkle cursor download
  • mohammad al qaq download
  • download audio book to kindle
  • clapping hands download
  • download exaltasamba e mc catra
  • download baby voice ringtones for mobile
  • free download executive planner
  • ary c4 pedro download
  • download ptu dep mba question papers
  • download oru rajamalli ringtone
  • perros & demonios - kendo kaponi download
  • download aggiornamento samsung omnia i900
  • crush bush zul sar download
  • garam masala dvdrip download
  • download glad you came song
  • download musica ninguém tem nada com isso
  • download devar magan film
  • 1433812312
  • conexant audio download
  • download game pho dem
  • kea coloring book download serial
  • peachtree download crack
  • saturday night zhane download
  • download verizon tethering blackberry software
  • megaman 8 bit download
  • srw alpha gaiden englisch download
  • idm free download lifetime version
  • free download ptv drama haqeeqat
  • where download skyrim creation kit
  • środa czwartek video download ulub
  • download wm recorder blogspot
  • winamp download htc touch
  • download anda adam selecta mp3
  • download cfw m33
  • download avast antivirus update
  • download samsung scx 4828fn printer software
  • sherlock holmes granada download
  • download blogger for nokia
  • 3200158762
  • download smash cars v1.0 multi2 cracked-theta
  • download update spm 12.1.5
  • download the sims 2 castaway wii
  • formular outlook download
  • download b2st lights go on again mp3
  • fontes download casamento
  • novos horizontes download cd
  • download pushprinterconnections.exe server 2008
  • windows live movie maker download gratis portugues
  • download più su renato zero
  • download equilibrio distante blogspot
  • building bridge download
  • download ice ice baby
  • download failed android browser
  • mahindra tractor logo download
  • download cd padre zezinho 1999
  • download sunset beach
  • donnie mcclurkin didn't you know download
  • download mp3 memang keong racun
  • download redenção 2011 legendado
  • download shannon mckenna books
  • wmp drm wizard download
  • a vingança dos nerds download rmvb
  • dainik bhaskar application download
  • download nick cave
  • download jazz jackrabbit windows vista
  • download now 81 album
  • download lagu jubing kristianto amelia
  • zephyr font free download windows
  • 2294681527
  • multimon download freeware
  • virtual reality videos download
  • download cau thắm trầu xanh
  • download towns for sims 3 for free
  • jonah hex animated short download
  • heidi intro video download
  • download bowtie alignment
  • shawty redd vegas download
  • que pena me das download
  • bearpaw 4800 pro ii driver download
  • download de perfect world mar em furia
  • download walking dead s02e08 vostfr
  • cityville apk download
  • download boris rezak voli me
  • download super dvd para suporte técnico
  • sajna hai mujhe old download
  • heavy lifting download
  • naziha episod 11 download
  • download end of time justin timberlake
  • lam sao download idm mien phi
  • download cheat pf ayodance 6082
  • deixe ela entrar download livro
  • download sql server hadoop connector
  • formula europass download
  • download vimeo and youtube
  • ava free hacks download 2012
  • download avr io.h library
  • bhajan kumar download
  • download driver intelbras wrg 240 e
  • oxford genie download free
  • afi decemberunderground download
  • download susanu i-auzi i-auzi girlshare
  • download tvc terbaru free
  • download mp3 andra backbone surrender
  • download s40 reader pdf
  • turkish league fifa 12 download
  • download state of trance 500
  • dos 6.22 german download
  • bangarang video download mp4
  • download band make her dance remix
  • real player doesn't download in chrome
  • samsung sh s223c driver download
  • bíblia narrada mp3 download gratis
  • download luiz castilho
  • 4463618187
  • sims 2 scars download
  • download oldies collection
  • download j lo follow the leader
  • 9837943598
  • rosario vampire ii 55 download
  • download good night roscoe dash
  • 4331758829
  • download mc koringa deixa a gatinha dançar
  • red alert 1 download tpb
  • download vault guide to investment banking free
  • free carsoft 8.2 download
  • generic download mime type
  • download yootheme balance free
  • download hero editor v 1.03
  • update.zip wildfire download
  • download winrar baru
  • naija party jamz download
  • elcometer 345 manual download
  • iglesia del perreo remix download
  • download mario kart wii ntsc-j
  • omega girl download free
  • z3x installer download
  • apps wont download just waiting
  • capture and download youtube videos
  • the world mmorpg .hack download
  • liga da justiça quadrinhos download
  • gnomeu e julieta download dublado dvdrip
  • northern rock nro download
  • download come outta mi life
  • download dock designer
  • padrino colonna sonora download
  • fallout vegas xbox patch download
  • real madrid celebration download
  • download ppl app
  • pulsar halloween download
  • hack map hon download
  • download una montagna di balle
  • yokai monsters spook warfare download
  • download 5.0 nelly album
  • happy mothers day quotes download
  • download ctr game for pc
  • mapa do nawigacji tomtom download
  • download videopad for mac
  • download emptiness hindi part only
  • free download reza sadeghi shabe yalda
  • entertainment contract download
  • electrical engineering dictionary download
  • chip download festplatte spiegeln
  • download bleach movie 3 fade to black
  • download mis dias sin ti
  • download online income tax return
  • rumba tres rumbamania download
  • stubhub download tickets
  • download anti vir chip online
  • download red bull storm chase
  • download driver compaq cq40-301au
  • free download ara gevorgyan mp3
  • bodyguard download full movie
  • future pluto download hulk
  • howard s becker outsiders download
  • download high resolution texture pack skyrim
  • splashtop web browser download
  • help download facebook
  • mediathek download pro7
  • download smart technology for free
  • download dama do bling
  • download wiz khalifa damn thing
  • download skrillex dubstep
  • o uraguai download livro
  • download permainan ponsel
  • seu cuca download 2008
  • informatica download 8.6 free
  • download gas do daske mp3
  • download driver aoc evo led
  • download gadu gadu na psp
  • download wynter gordon with the music i die zip
  • url download music youtube
  • sony pmb download for android
  • 529650811