Wednesday, March 27, 2013

Salesforce End of Year Financial Results and Subscription Numbers Versus Dynamics CRM

 

With the recent release of the Salesforce end of year financials and the release of Dynamics CRM subscription numbers at Convergence, we can kill two birds with one stone and see how Salesforce is going.

Unless stated otherwise, all numbers presented are taken from the Salesforce detailed financials (from their web site) and from the announcements made by Microsoft at Convergence. For what it is worth I would love to put the Microsoft financials up against the Salesforce ones but I am yet to see the financials for Dynamics CRM (statistics by region would also be delicious). To this end I can only highlight my delights and concerns in the Salesforce financials, use them to extrapolate subscription numbers and compare these to the ones Microsoft puts out each year (Salesforce has not put out any subscription numbers for over two years).

Earnings Call Buzzword Bingo

A regular spot in the Salesforce announcements, let us see what Marc and his CFO were thinking about as the end of the year approached.

Key phrases of two words or more were:

  • deferred revenue (14 times) (that is revenue they do not have yet)
  • our customers (13 times) (nice to see a focus on customers)
  • non gaap (12 times) (as usual, in more recent times, Salesforce focuses on the numbers they have manipulated, rather than the ones they report to the government)
  • cash flow (10 times) (I will do a section on this as cash is king and understanding the sources of cash helps us understand the health of the business)

Key words were:

This Quarter’s Keywords (total words: 3800) Last Quarter’s Keywords (total words: 3000) Last Year’s Keywords (total words: 3400)
revenue (45 times) revenue (38 times) revenue (37 times)
customers (23 times) cloud (20 times) cash (24 times)
cloud (22 times) growth (17 times) cloud (22 times)
customer (17 times) customers (13 times) social (19 times)
growth (17 times) social (13 times) growth (17 times)
service (16 times) marketing (10 times) enterprise (14 times)
enterprise (15 times) service (9 times) customers (11 times)
cash (13 times) cash (9 times) sales (10 times)
marketing (9 times) sales (9 times) service (8 times)
social (9 times) customer (8 times) heroku (5 times)
sales (8 times) enterprise (7 times) chatter (5 times)
margins (7 times) mobile (7 times) customer (5 times)

My takeaways:

  • It is all about the revenue, customers and the cloud
  • It is not about social as much as it used to be
  • We do not want to look at cash any more (which is why I am going to)
  • Service is becoming big
  • Heroku who?
  • Chatter who?

Cash is King

A common wisdom is that while the revenues can be manipulated (*cough* Non-GAAP *cough*), it is much harder to mess with the cash flows. So let us see where Salesforce is getting its cash from. Firstly, in a cashflow statement, cash comes from three places:

  • Operating activities (generally the selling of stuff)
  • Investing activities (investing back into the business, capital expenditure)
  • Financing activities (external investment)

These definitions are pretty loose, so for a more formal breakdown, go here.

Generally speaking, a business should be making its money from operating activities and not so much from selling assets (investing activities) or from taking out loans (financing activities).

In Salesforce’s case we have:

  • Operating cashflow: $282 million for the quarter and $737 million for the year
  • Investing cashflow: –$178 million for the quarter and –$939 million for the year
  • Financing cashflow: $124 million for the quarter and $335 million for the year

So, on the surface, all looks good; most of the cash is coming from operating activity, we are investing back in the business and the shortfall is being made up by the odd bit of borrowing, with a little surplus coming into the business (to the tune of 140 million for the year). If we listen to Marc, this is as far as we would go. Let us go one level down and see what some of the largest components of cash coming in or out of the business are for each type of activity over the year.

  • Operating cashflow
    • Net income: –$270 million
    • Stock-based awards: $379 million
  • Investing cashflow
    • Business combinations: –$580 million
  • Financing cashflow
    • Proceeds from equity plans: $351 million

So, in terms of net income, we lost a little over a quarter of a billion dollars for the year. Now, a large part of this is the $150 million tax credit write-off I explained previously. However, even if we do not consider $150 million of this to be real, we are still left with a hole of $120 million in income.

Fortunately, another line item in the operating cashflow comes to the rescue; the stock-based awards. This is the cash generated by staff exercising stock options (as I explained in the second quarter analysis). Let us say Salesforce offer a discount scheme for their shares such that, each quarter, an employee can buy Salesforce shares with no brokerage and at a discount to the market price. Many would take up the offer and likely forego salary and bonuses in exchange for such a scheme.

Everybody wins. The member of staff recoups their lower wage by getting an asset at a bargain price and Salesforce get to reduce salary expenses and gain some money when the staff exercise their options. So where is the catch? The catch is in where the share came from because, essentially, Salesforce created it from thin air. The gap in the equation is with all these additional shares being created, each individual share is worth a little less and the asset was bought at a fair price, not a cheap price. Fortunately for Salesforce, the market has not caught on to this and the stock price remains high (despite there being 4% more shares in the pool than last year). In an ideal world, the value of the share being printed would be considered an expense, but it is not (because it is assumed the market value of the share will adjust to compensate). To this end, Salesforce get to print money and put it in the operating cashflow to an amount which accounts for over half of our operating cashflow. As long as the share price remains high, everything is fine.

Remember how I said “a business should be making its money from operating activities”? This assumes the main source of operating income is from sales, not the printing of shares. In my head I envision Salesforce’s operating income as a game of Jenga. We remove the value of the company from underneath and pile hollow bricks of cash on top. Eventually the market will wake up and the tower will fall down.

Investing income is, as I understand it, money spent on acquisitions and mergers.

The financing income is a curious one. The best I can make out this the cash from people paying into their pension scheme (which will eventually have to come out).

Therefore, overall we have a picture of a company printing shares to generate money to buy other companies and cover the costs of selling at a loss. If this the case, would it not make more sense to invest in the companies being bought, rather than in the company buying them?

Revenue and Costs

Revenues (red) grew at around 30% year on year, following the trend of slow deceleration we have been seeing for the past year or so. Unfortunately the cost growth for the same period was 34%. Meaning costs are still running away from revenue and, while this is the case, we cannot expect there to be a profit.

As we can see income is no longer dropping off the cliff, but it is still in the negatives.

In terms of margin, the frightening 9% loss, has now been brought back to around a 3% loss. We are only selling our $10 notes for $9.70 now.

Insider Sales

Using Yahoo’s insider transaction report for Salesforce we see that insiders (officers and directors) sold off a total of 8% of the shares they own over the past six months. For a company which is described as being such a success, it surprises me that the people who know the story from the inside continue to offload their ownership of the company.

Staff Numbers

In the third quarter results, I noticed staff growth was tailing off. This deceleration has continued as well. Salesforce is growing its staff, year on year, by about 26%. we have not seen staff growth this slow since 2010.

Subscription Numbers

I recently tweeted an infographic suggesting Salesforce had less users than Dynamics CRM. After digging into the statement, it seems Capterra’s source of numbers was this. At best, this is true only of the Sales Cloud subscriptions. Historically, I have compared subscriptions of the entire Salesforce stack to Dynamics CRM so I will continue with my tradition. While Salesforce do not release subscription numbers, we can guess at the numbers from the revenue being generated. Using the same methods of estimating as previously adopted, I predict Salesforce has around 5.8 million users and 165,000 customers. Assuming this is correct, the two are maintaining a subscriber ratio of just under 2:1 to each other.

Conclusions

For Salesforce, it is still mainly about revenue, customers and the cloud. The cashflow into the business appears to be driven from the purchasing of shares through options, rather than through sales. Profits are still elusive. My hope is the cost growth can be managed so that the business can be brought slowly back to profitability. Finally, in terms of how the two products fare, Salesforce has a user base approximately double that of Dynamics CRM, although Dynamics CRM has larger customers. This seems to be an on-going trend with the two products.

Sunday, March 17, 2013

The Only Surface Pro Review You Need If You Run Outlook

A little over two weeks ago I bought a Surface Pro, while at the MVP Summit, from the Bellevue Microsoft Store. For the non-Americans reading, the Microsoft Store is like the Apple Store but with Microsoft-related products.

Since then I have read a lot of reviews of the Surface Pro full of nonsense, FUD and ignorance. Here is the review for the rest of us.

Please note this is not a pure Surface Pro review but rather a review of the experience of running the Surface Pro with Windows 8 and Outlook 2013. Given this is a common scenario in the real world, I figured my experiences may be of interest.

My Very Specific Purchase Criteria

I have one primary criterion for any laptop or laptop-like device I purchase and that is it must run Microsoft Outlook and by this I mean in a Windows environment. As the avid ‘Musings’ blog reader will know from here, here and here I live in Outlook both at work and at home. I literally have reminders in my Office 365 Outlook calendar for taking out the garbage and I feel there is no shame in this. Being an MVP, working full time and not completely ignoring my wife and two children takes a lot of organization and Outlook is the perfect tool for me to do this.

The Reason Why Comparisons To Apple Products Are Plain Dumb

The Surface Pro is a touch screen tablet, running Windows 8, on an Intel Processor. It is not a touch screen tablet running an efficient, but less powerful, ARM-like processor like the iPad and it is not a small non-touch screen laptop like the MacBook Air. In theory I could buy a MacBook and dual boot it with Windows 8 but, frankly, Windows 8 has been built for multiple interactions, including touch, so it will always be an inferior result.

Therefore, comparing the Surface Pro to an iPad and complaining about the battery time is like complaining that a pair of scissors make for a lousy hedge pruning experience. This is not taking away from the Apple devices it is just, for my needs, comparisons are, essentially, meaningless.

My Low Benchmark

One final point of clarification. The reason I was upgrading was because my previous laptop, an emachines E627 running Windows 7 and Office 2010 was not cutting it any more. The single core processor meant going from cold start to Outlook was taking around 15 minutes and I could not play YouTube movies without the sound going out of sync or a lot of missing frames. I did not need a lot of muscle but I did need some.

Why Not Other Options Like an Ultrabook?

I went into the Microsoft Store open to any form factor as long as it had a multi-core processor, could run Outlook and had equal or better resolution than my current machine (1366x768; Outlook loves her real estate). The fact is to get an i5 processor with HD resolution in any other machine in the Microsoft Store was costing closer to $1,500. With this mindset, the Surface Pro, even with the Type Keyboard, was a bargain.

Disk Space

Alongside the battery time (which I will get to next), this is probably the biggest ‘smirk point’ the Apple folk have thrown at me when telling them of my purchase. Let us sort this one out straight away. Here is the contents of my hard drive as we speak:

Of the 110Gb that comes on the solid state drive, I am using about 60%.

In terms of the programs on the drive, 5Gb is Civilisation 5 (which has a touch-optimized mode and runs like a charm), a little over 1Gb is Office 2013 and about 2.5Gb are Windows apps for ‘Metro’.

In terms of my user profile, 4Gb are the Windows 8 and Office 2013 iso files which boot directly in Windows 8, 6Gb are pictures and videos, synched down from my Lumia 800 via Zune, 4Gb are the OST files for Outlook and 8Gb is general stuff on the desktop I have not yet got around to sorting.

There are two reasons I have no concerns in regards to space on the device. Firstly, if I am storing personal data on the Surface Pro of any significance, I am a fool. This is what cloud storage is for. In buying the Surface Pro I got 3Gb of free storage to add to my existing 25Gb of storage on SkyDrive. Excluding photos and music (which I store elsewhere) this has been sufficient to house all data I hold precious. Office 2013 treats SkyDrive as just another drive so opening or saving to it is simple. For other stuff, you can drag the files directly into SkyDrive in the browser to upload it. The only thing gobbling up my c–drive should be program installs and I already have pretty much everything I need on that front.

The second reason I am not worried about local storage for, say, movies when offline is the Surface Pro comes with a MicroSDXC slot. This can read MicroSD cards up to 2Tb. I have put in a 16Gb one I had lying around (which I still have not touched) and ordered a new 64Gb card from eBay for $30.

I can understand why the Apple folk fear storage because I have seen their panic when their iPhones run out of space and they are away from a computer but, for the Surface Pro, it really is not worth worrying about.

Battery Life

My experience has been to expect a solid four hours from the battery. I have had the Surface Pro on and off today without the power supply and it currently reads “1hr 35 min (39%) remaining”. Doing the maths, this comes out to about four and a half hours total battery life. The only time I am away from a power source for more than a couple of hours is during long haul flights. It is true I could not have had the Surface Pro on the flight back from Summit permanently on without power but the reality was I was asleep for a good four to five hours of the trip, I was watching two or three movies (The Dark Knight Rises is a seriously good film) and reading emails the rest of the time. If I had been pressed into doing some serious work, I had power in the seat. All A380 economy seats and the first ten rows of economy in Delta’s Sydney-LA planes have 100v power available in the seat.

For the way I use my Surface Pro, power is not an issue; I simply do not need ten hours off the grid.

Accessories

Does the old joke about how you milk a sheep apply equally to the Surface Pro? Total accessory purchases to date:

  • Type Keyboard (if you are using the Surface Pro for any kind of typing, you need this, or the Touch Keyboard, but at $130 I do feel a little ‘woolly’. An alternative would be a portable Bluetooth keyboard and cover which can be bought for $10 and $5 on eBay respectively)
  • 64Gb MicroSD card ($30 from eBay)
  • USB 2.0 DVD Drive ($20 from eBay)
  • USB Ethernet connector with 3-port USB hub built in ($7 from eBay)

The Surface Pro appears not to support WiDi so the only other purchase I can see me making is for a Mini DisplayPort to VGA or HDMI convertor. Looking at eBay, I an get one of these and still have change out of five bucks.

Other than that initial outlay for a keyboard, everything else is non-proprietary and cheap. The power port and keyboard port are proprietary but power supplies are running at about $20 on eBay and, unless they provide something amazing like a battery in the keyboard, the current keyboard will suit me fine. Additional styluses can be bought for $30 but I find old Wacom styluses work pretty well (although they do not always register a ‘right click’ via the stylus button).

Retraining For A New Form Factor and Operating System

I took to Windows 8 quite easily. This is due to two factors. Firstly, I had owned a cheap Windows 8 tablet about six months ago for two weeks before I dropped and broke it. The supplier from Alibaba.com was very understanding and offered a refund but my conscience got the better of me and I never bothered.

Secondly, I own a Lumia 800 windows phone. Windows phones set you up nicely for the screen keyboard and the ‘Metro’ face of Windows 8. The rest is figuring out where stuff is and remembering we touch from the sides and mouse from the corners.

In terms of how my behaviours have changed as a result of the form factor, they have been quite pronounced. Firstly, I now take my Surface Pro to work (I never did this with the old laptop). It allows me to process emails while taking public transport and is great for meetings. Secondly, I now find myself interacting with the device in multiple ways, depending on which is the most efficient. For example, I have learnt that to close tabs in Internet Explorer is Control-W because it is too easy to open a new tab, rather than hitting the ‘x’ with a finger and keystrokes are quicker than precise stylus work.

For Outlook 2013, the stylus is sometimes needed. A great example is the social popup for Outlook.

 

It is that tiny ‘caret’ next to my picture, slightly less than 1mm in height. There is no way my finger is going to nail that without a struggle.

Other than for programs whose mouse-overs do not respond well to the stylus or a finger (Surface Pro treats fingers and the stylus differently and generally ignores palm resting) I hardly ever use the touch pad on the keyboard.

Things That Have Annoyed Me

The Stylus Bug

There is a bug with the stylus. Depending on your power settings, when the machine goes to sleep it can forget to wake up the stylus detection driver. Initially I fixed this by going back to the ‘Balanced’ power setting and rebooting. There have been times when this has not worked. Microsoft’s workaround is to go to Control Panel – Device Manager, go to the ‘Human Interface Devices’, right-click on the listed ‘USB Input Devices’ and, if it does not show ‘Disable’ as an option, uninstall it and reboot. This works but can be annoying (Microsoft have said a fix is coming really soon). I' have taken it one step further and for all those USB Input Devices with no ‘Disable’ option (I have two of them), I have gone to properties and Power Management and un-ticked the save power option.

While early days, I have not seen the problem since.

The Type Keyboard

Fellow CRM MVP David Yack whose native American name is “man of few words but great wisdom” recommended the Type keyboard over the Touch and it was good advice. It is true that, as I rest my Pro on the arm of the sofa, occasionally the keyboard will lose connection with the machine and it will miss strokes. That I can live with (and is fixed by going to a hard, flat surface). The real niggle for me is the ‘c’ key. For some reason, while every other key registers regardless of where it is pressed, I have to hit the ‘c’ in the dead center for it to register the stroke. I have not seen others complain about this online so I think it is just me. If there was a Microsoft Store in Sydney, I would get the keyboard replaced but there is not so it is something I must live with, unless Microsoft, so impressed with this review, decide to throw me a bone and a new keyboard. *hint/beg mode off*

The Kick Stand

The kick stand, which holds the screen up, has two positions: closed and open. There is no option to have the screen at multiple angles. This means, as it sits on the arm of my chair, I am adjusting my position to get my head directly in front of it, rather than the other way around. Someone will invent an iPad-like cover, with its ‘stand segments’, which connects to the keyboard port (or loops around it) and they will make a killing. If someone wants to run with this idea all I ask for is a prototype and 10% of the profits in perpetuity.

The Cameras

There is a camera on the front and back but they are only 0.9 mega-pixel from what I can ascertain. This is fine for Skype calls but no good for family snaps. My advice is get a good camera or mobile phone and take the pictures there.

Things That Have Blown Me Away

The big one here is boot time. As mentioned previously, it would take me 15 minutes to go from cold boot to being able to use Outlook on the old machine. This is now down to literally one minute. That is a serious time saver given I will open up the Surface to read email at least twice a day (before work and when the children have gone to bed). The improvement is due to a number of factors including the screamingly fast boot time of Windows 8 (literally a few seconds) and the smarter OST management of Outlook 2013 (it seems to only pull down the past 12 months of content now making for a much smaller OST file).

Windows 8 compatibility also leaves me speechless. I still use Money 94 to manage the handful of shares I own. It worked on Windows 7 and continues to work flawlessly on Windows 8 (I loaded it by sharing the DVD drive from my old laptop). Given the hassles I had stopping apps from crashing on the work iPhone, which was only a couple of years old, and having to install a random app to ‘reset the common files’, I am seriously impressed Microsoft even care enough to maintain this level of support on their software.

Finally, the other thing I am really impressed with is OneNote. I can take the Surface Pro into a meeting, write notes with the stylus, go back to my desk machine and the notes are there ready and waiting in SkyDrive.

Conclusions

I love this device, despite the niggles. It has made me more productive through the shorter bootup time and by giving me a device which I can use on the way to work to read and respond to email (and look at the embedded links and attached files). Even at work it is useful as a meeting note pad via OneNote.

While it is one of the more expensive laptops I have bought (I generally buy end of line cheapies like my emachines), I feel it has been value for money. If you are a heavy user of Outlook and looking for a bang-for-buck machine, in my opinion, this is one of the best.

Saturday, March 9, 2013

Using Dialogs to Make a Mechanical Turk

The original ‘Mechanical Turk’ was a machine made in the late 1700s to play chess. Here is the picture from Wikipedia.

I do not think the term was supposed to be racist. I think it was designed to conjure up an image of something exotic and the history of chess is tied to the Middle East (although originally from India). I am guessing, to the European courts of the time, Turkey and the Ottoman Empire may have been the most accessible part of the Middle East and, thus, the connection.

The thing is it was a con. It was an elaborate form of the ‘magic box’ act where a person goes in the box and then disappears. In this case the main doors had cogs and bits and pieces inside them and the cabinet had doors on the other side so you could look all the way through but behind the drawers at the bottom was a hidden compartment to hide a person.

The illusion would involve bringing out the machine, showing the inner workings and then challenge an audience member to play a game of chess with it. Once the doors of the cabinet were closed and an audience member selected, the chess master hidden in the bottom would pop up and control the automaton from within. Generally they won the game and the audience would marvel that a machine could rival a human at such a complex pursuit (even IBM’s Deep Blue had human assistance when it beat Kasparov).

The fact is there are some things which are quite difficult for a machine to do which are easier for a human, and vice versa. In using Dialogs in CRM we can get the best of both worlds.

The Problem

The problem my client had was quite simple but difficult to solve in a completely automated way. The client often attended trade shows. From these trade shows they gathered business cards which they intended to bring into their CRM system. However, their CRM system was integrated to other systems, including their accounting system. While the creation of a duplicate Contact was not a big problem and could be handled using CRM’s merging tools, the creation of a duplicate Account (Organisation) would create new records in the remote systems and more of a headache to unravel.

There simply was no way to guarantee a match to an Organisation in the system, due to loose naming conventions, regardless of the clever rules and code we could throw at the system.

The Solution

In this case, a Dialog proved to be a nice way to work around the problem. First of all the user imports all the Contact records. The import does not populate the Parent Organisation, but holds the Organisation name in a custom field on the Contact (Import Organisation Name). The Dialog was then used to process the records. Just like Deep Blue, I got CRM to do the heavy lifting where it could and when it was not sure, fell back to the user.

Here is the Dialog:

Looking at the header, you will see I have made this a child process. The reason being the Dialog will go through all Contacts which need an Organisation one at a time and call itself to process the next one. Unlike Workflows, there does not appear to be any problem writing a potentially infinitely looping Dialog.

To call the Dialog, the user simply finds a record they have just imported and runs it from this. The Dialog then uses the ownership information of that record in the first query which, essentially, finds all Contacts where the Import Organisation Name has a value but the Parent Organisation field does not.

The results are then presented to the user in a Page and the user selects the record they wish to process.

A secondary query is then run to try and find a matching Organisation. In this case the query looked for all Organisations in the system where the Organisation Name began with the value of the Import Organisation Name of the selected Contact. Two scenarios then ensue:

  • There are no matches: In which case the system automatically creates a new Organisation, links the selected Contact to it and calls the Dialog again for the user to select a new Contact
  • There is one or more matches: With no hope that CRM can work out which one, all are presented to the user, who selects one. Once selected, the Contact is linked and the Dialog called for the selection of another Contact

So it continues until the user gets through all the Contacts or gets bored and cancels the Dialog knowing they will revisit it later.

I did also add an additional option to the second scenario or presenting a two value question to cover if none of the Organisations presented are a good match. In this case, as with the first option, a new Organisation is created.

Conclusions

Since using this trick a few months ago, other uses have come up, such as for processing event registrations via web forms and newsletter subscriptions. I still hope that things like Queries, Input Arguments and Variables will eventually come to Workflows but, until then, do not discount Dialogs as simply good for call scripting. They are powerful and, like the Mechanical Turk allow us to supplement the limitations of technology with the human factor.

 
sale-70-410-exam    | we-sale-70-410-exam    | hot-sale-70-410-exam    | it-sale-70-410-exam    | dump-sale-70-410-exam    | test-king-sale-70-410-exam    | to-sale-70-410-exam    | net-sale-70-410-exam    | passsoon-sale-70-410-exam    | passresults-sale-70-410-exam    | realtests-sale-70-410-exam    | sale-70-461-exam    | cbtnuggets-sale-70-461-exam    | kingdump-sale-70-461-exam    | certguide-sale-70-461-exam    | certkiller-sale-70-461-exam    | ucertify-sale-70-461-exam    | itexamcup-sale-70-461-exam    | freebraindumps-sale-70-461-exam    | sale-70-486-exam    | pass-sale-70-486-exam    | bloggedbychris-sale-70-486-exam    | microsoft-sale-70-486-exam    | downloadvce-sale-70-486-exam    | passitdump-sale-70-486-exam    | certexam-sale-70-486-exam    | iexamcollection-sale-70-486-exam    | sale-C4040-252-exam    | certifyguide-sale-C4040-252-exam    | testking-sale-C4040-252-exam    | actualtests-sale-C4040-252-exam    | itdumps-sale-C4040-252-exam    | leads2pass-sale-C4040-252-exam    | examsheets-sale-C4040-252-exam    | itcertpass-sale-C4040-252-exam    | testkiz-sale-C4040-252-exam    | pass4sure-sale-C4040-252-exam    | examsboost-sale-C4040-252-exam    | examkiller-sale-C4040-252-exam    | certsgrade-sale-C4040-252-exam    | examsforall-sale-C4040-252-exam    | examcollection-sale-C4040-252-exam    | braindumps-sale-70-461-exam    | elearningexams-sale-70-488-exam    | itexambibles-sale-70-488-exam    | latestbraindumps-sale-70-488-exam    | downloadexam-sale-70-488-exam    | examsforall-sale-70-488-exam    | testinsides-sale-70-488-exam    | braindumps-sale-70-488-exam    | test-king-sale-70-488-exam    | kingexam-sale-70-488-exam    | mytestking-sale-70-488-exam    | prepnerds-sale-70-488-exam    | vcefiles-sale-70-488-exam    | ipass4sures-sale-70-488-exam    | prep4cert-sale-70-488-exam    | brain-dumps-sale-70-488-exam    | itexamboom-sale-70-461-exam    | pass4surebraindumps-sale-70-461-exam    | blogspot-sale-70-461-exam    | testking-sale-70-461-exam    | networkedminds-sale-70-461-exam    | realbraindumps-sale-70-461-exam    | test-inside-sale-70-461-exam    | exambraindumps-sale-70-461-exam    | testkingsite-sale-70-461-exam    | flashcardmachine-sale-70-461-exam    | blogspot-sale-mb5-705-exam    | passcertification-sale-mb5-705-exam    | passitdump-sale-mb5-705-exam    | beitcertified-sale-mb5-705-exam    | exams-collections-sale-mb5-705-exam    | vceexamstest-sale-mb5-705-exam    | pass4sureexam-sale-mb5-705-exam    | examref-sale-70-486-exam    | free-braindumps-sale-70-486-exam    | certshared-sale-70-486-exam    | passin1day-sale-70-486-exam    | itexamcool-sale-70-411-exam    | vceorg-sale-70-411-exam    | go2exam-sale-70-411-exam    | downloadexam-sale-70-411-exam    | examreal-sale-70-411-exam    | godumps-sale-70-480-exam    | examoutlet-sale-70-480-exam    | passvce-sale-70-480-exam    | lead2cert-sale-70-480-exam    | vcepracticetest-sale-70-346-exam    | dumpstree-sale-70-346-exam    | pass4king-sale-70-346-exam    | greatexam-sale-70-346-exam    | mybraindumps-sale-70-462-exam    | examvce-sale-70-462-exam    | braindumps-review-sale-70-462-exam    | brain2pass-sale-70-347-exam    | officialcerts-sale-70-347-exam    | actual-sale-70-347-exam    | testsnote-sale-70-347-exam    | certsall-sale-70-347-exam    | examschief-sale-70-347-exam    | examcollectionuk-sale-200-125-exam    | killexams-sale-200-125-exam    | labs-sale-200-105-exam    |
http://www.kernhigh.org/    | http://www.kernhigh.org/    |