Wednesday, July 13, 2005

Going for a walkabout with - VB6, COM, COM+, Transactions and Indigo (Part 1 of X)

Ever time I work with the current Indigo bits, I am always continously amazed with the excellence in engineering and design behind it. With such a great extensibility model, a clear demarcation of local and distributed behaviors, expilict design time declarcations of binding requirements for communications to take place successfully, the explict nature in exposing operations and scheme through contracts and the powerful, yet simply elegant layering of the programming model; all of these provides a great framework for building distributed systems, whether leveraged in greenfield or brownfield scenarios.

One of the aspects that made my jaw drop, was when I first saw the COM & COM+ intergration featureset of Indigo in a demo that I saw a while back. The demo showed a MTS application orginally built in circa ‘96 (with no changes to the codebase and used only the binary and TLB), and it showed the “Indigo” enabling of some of the Interfaces so that they could speak WS-* on the wire, WOW!

During my usergroup sessions on Indigo a few weeks ago (in Cork and Belfast but not the Indigo session in Dublin for some reason, sorry! I revised the slide deck a little), I gave this particular feature set  a quick mention and gave an overview of the COM(+) intergration features and the DTC talking WS-AtomicTransaction; and it got folks very interested, and they duly followed up afterwards for more information on what is possible. Overall it seems to resonate very well with folks; as it answers the big question of  how does it play with the stuff I have today, “as we have a little of this and a little of that”, which has developed over time.

So far, my feedback from the sessions fits into two buckets, those with older/current existing MS tech. stack based solutions and those with solutions not based on MS tech. stacks. For this series I will focus on those with MS stacks that are older/current, but some details and possibilities for solutions based on non-MS based tech stacks will emerge and be interwoven in the blog series and this is especially for the use case of Transaction context flowing between callee and caller (or vice versa), as well as all of  WS-* protocols.

When it comes to the older/current existing MS tech. stacks, I guess it is fair to say that not every VB6 application is going to be migrated to the .NET goodness in the long run for different reasons. In my opinion, it is a shame really, as the release of Whidbey (the codename for the next version of .NET, which is offically titled .NET 2.0 when released) in Nov. of this year, is Version 3 of .NET (i.e. .NET 1.0 and .NET 1.1, were significant releases after all) and certainly the level of productivity, performance and scalability enhancements that has occured in the Framework and CLR over the last 5 years has been very, very significant. All of these bring great leaps in performance, scalability and performance, and this is before I even mention how intelligent, productive and all encompassing the Visual Studio suite has become with the upcoming release of Whidbey. I won’t delve any further in this space, but software factories, DSL’s, Visual Studio Team System  are areas that warrent much attention in my view.

So while everyone is looking forward, what about the systems that are live and in production today. What about VB6, ES, COM+, MTS, etc… With so many distributed systems already in place today, it raises the question what can be done with these systems in the Indigo world or even more so, when migrating these systems now, what technologies are out there and what needs to be thought about? As I have covered ASMX, Remoting and MSMQ in the sessions, I thought I would focus on systems that don’t use these particular technologies from MS and delve into some of the others.

When it comes to the others, I think the VB6 developed solutions would be an interesting topic to cover. This is especially the case when it comes to distributed applications that have been developed over the last 10 years or so on the Microsoft platform, back in the days when MTS was king or its current incarnations of COM+/ES. If doing the dual movement, from MTS to COM+ (especially COM+ 1.5 on Windows 2003) and VB6 to .NET, it is really amazing the performance, availability, scalability and increased maintainability (from a dev and IT-Pro perspective) that can be achieved when some re-designing when migrating a code base. Obviously the current wave of innovation will possibly overshadow some of the innvovations from the recent past, but innovations done as recently as 2–3 years ago are as important today, as they were the day they were released.

Taking for example, COM+ 1.5, you have a very comprehensive set of features that increase the maintainability of COM+ applications, such as:
– application recycling
– component aliasing
– SxS, which is side by side assemblies, i.e. multiple versions of Dll’s on the one box, which is a very useful feature when consolidating apps onto less server tin
– marking of components as private, therefore being explicit about what is exposed
– better debug capabilities
– etc…. 

(For all a good overview of the goodness in Enterprise Services and COM+1.5 architecture this link is very useful, in describing the all of the features)
(also for all things COM+ 1.5, this link is useful)
(and for all things Enterprise Services, this link is useful)

And when you combine this with the comprehensive framework of class libraries, with the powerful runtime and development environment of .NET, the performance and maintainability of applications is ever increased.

With so much emphasis being placed on Web Services over the last few years and today on SO and SOA, it raises the question what is possible with existing VB6, COM, COM+, ES applications/assets and what possibilities exist to leverage them and bring them into the new evolutionary world of SO. Perhaps even starting to do so today, but if this is not possible what possibilities exist in the Indigo timeframe? Isn’t Indigo just only about Web Services and  SO? Well, it depends on what you mean by Web Services and SO?

I currently see SO as being about a design philisophy which you can merge with your own thought processes for designing better distributed systems and it assists with what best practices needs to be thought about when building system today, when making them loosely coupled, agile, reusuable, scalable etc.. and more resilent to change and changing requirments. When it comes to Web Services, at its inception it was mainly focused on being a “port 80” friendly way of making remote procedural calls with a particular text based encoding. Since then it has evolved to its current point where it is now more focused on how to make Services communicate, this in my view makes the “Web” moniker a subset and not a superset of the capabilities it offers. Currently, (“Web”/) Services has evolved to a point where it can be used to devise the fundamental unit of transmission (i.e. a message), how that message is strucutured (i.e. the infoset), how that message is encoded, how it is versioned; and through its strucutured messaging approach allows for the composability of protocol information to be easily factored into the unit of transmission. With all of this in mind, as I currently like to see it, Indigo as a communication/messaging/V.Next framework , allows you to leverage the technical capabilities of (“Web”/) Services and the design philisophy of SO in a far easier way that is currently available to us today, but in saying that, much of the analysis, design and implementation of Service Orientation can be done with todays technologies, to create Service facades that are loosely coupled, more coarser grained, pass messages and more resilent to change and changing requirments. One of the key aspects of Indigo, is that it leverages key standards and protocols, very easily caters for new additions and does not mandate a particular calling convention or Message Exchange pattern, transport, or encoding. A good illustration of this, is that with one implementation, you can have multiple contracts developed into an implementation; and at deployment time, can have multiple bindings to different transports and encoding, protocols and distributed behaviors (such as session, flow, context, transaction, etc..),  maximising the reach, agility and reusability of an implementation, while allowing those that consume the service offered by the implementation to be abstracted from any underlying changes that may occur in the actual implementation but not the facade.

When it comes to VB6 implemented distributed applications (and those based on DCOM or other technologies based on the RPC paradigm of communication), I think it is fair to say that by and large these would be tighly coupled systems, like their peer systems based on other distributed object technologies. In general they are tighly coupled from the perspective of a number of high level concerns, such as requiring implementation to be shared, wire/protocol being used, assumptions about the distributed enviornment between them and the time (responsiveness, latency, always running/connected/available) and space (near or far, security, network topology, etc..)  properties of the overall environment and the systems they interact with. All of these aspects of distributed object/component technology
Obviously with systems based on the design philosophy of distributed objects, the cleaving apart or cleaving together of enough functionality to graft a service facade onto the implementation with sufficent levels of granulairty is not an easy endeavor, and in my view is very rarely as simple as “Web Services” enabling of existing interfaces in an existing system. Certainly “Web services”, in the form of ASMX etc.. provides some of the base plumbing to tactically create a service facade into an existing implementation, but only after some analysis of the system and determining what coarsed grained funtionality can be enabled in a loosely coupled, message based service and can be leveraged by new and existing systems, by exposing a composable unit of functionality at an endpoint(s). When it comes to the VB6 and/or COM based implementations, there is lots of things to consider from a technology perspective, when looking to leverage these systems and evolve them into the Service Oriented world.

To start with, if the application is implemented with VB6, I would strongly suggest moving the codebase to .NET and looking at redesigning some/all of the application, to leverage the fact that the .NET environment has a powerful framework and also, when it comes to Enterprise Services, VB.NET is able to leverage all of the COM+ runtime environment.

When considering the options of whether to still use the COM+ environment when moving code to .NET, Enterprise Services may or may not be a relevant option for you. Enterprise Services is COM+ from the perspective of .NET and is an almost parrallel stack with little interop between the two for maximium performance, but some necessary interop for max. flexibiliy/agility/consistency. ES provides full and complete access to the COM+ feature set, as .NET does not have STA constraints and/or the thread affinity issues that the VB runtime had, so all of those options that are available in the COM+ runtime are available to you and you are no longer restricted because of the thread affinity world of VB6, which was severely limiting to the VB developer. As well as this it has many other features worth considering:
– ES can be easily accessed from an ASMX app. Allowing you to create a service facade that is loosely coupled, message oriented and verionable; while also allowing you to create one or more communications channel for max interop, reach and flexibility.
– It still gives you flexibility in deployment scenarios (when applying layers over tiers, ideal for ISV’s and solutions that target multiple deployment scenarios). While this option is very much distributed object based, IMHO, today it is sometimes necessary due to DCOM’s protocol features/performance but obviously it introduces tightly coupling between the layers when distributed across tiers. So (with no bun intended), a service facade would need to be created into the layers concerned, as the sphere of control not requires that the automous unit deployed/versioned etc.. is composed of more than one tier and that the Service Boundary is that which is the entry point into each tier or in the more likely case, is the entry point into a composite of the tiers.
– It still has the fastest protocol on the wire from MS, i.e.DCOM, which is not surprising with over 10+ years of engineering effort and optimisation. While this is relevant to us today, it is important to apprciate that DCOM is a monlithic protocol that is only suitable for scenarios that are within a Service Boundary, where it is neccessary to have
– Has a whole host of security options for the wire format and as well as the authorization/authentication for the application.
– Eases the effort required for implementing distributed transactions.
– Object pooling, JITA, Object throttling, host startup and idle time management, granular security, loosely coupled events, asynchronous disconnected calls, administrative tools and application activation
– Allows you to be more explicit between what is exposed between your layers/tiers, in that not every object is implicitly exposed by the ES application, unlike VB6/COM developed objects
– Certain features, such as Transactions be accessed directly from within ASMX, without the need for a full serviced component to be created
– Code can be easily migrated to Indigo if so desired. There are few exceptions to this.
– Easy intergration with Indigo. This obviously applies to COM also, which I will cover later.

When it comes to the move from COM+ to ES, another consideration is for the use case, where you are using COM+ only for Transactions (be they distributed or local, to an execution context). .NET V2.0 introduces the System.Transactions namespace and this is a very innvovation piece of technology that is introduced into the upcoming version of the framework, which I personally feel is the most innvovative (if not one of the top five) additions to the framework in this upcoming release. When I think of System.Transactions, I like to think of it from the perspective of the levels of innovation it brings to transaction processing, like that of its predecessor, MTS. When MTS first came out, it provided us with a platform for building very scalable distributed systems;  with its RAD and clean techniques of ensuring consistency when accessing one or more data servers (aka, resource managers, such as SQL Server etc..) through declarative attributes which enlisted hosting environment/container services – was the first mass distributed commerical hosting container - and had a profound impact on how we have developed software for the last 10 years.While there is much written about how MTS/COM+ was not really about transactions, but more about building very scalable distributed object/component solutions, I do think it is fair to say its’ introduction into the

In my view, Transaction services from the hosting container became one of the primary uses of MTS/COM+, while the archiecture was more about building scalable systems and instance management than it was about Transactions. When it comes to migrating Transactional functionality, the System.Transactions namespace maybe something you may want to consider, depending on whether to use ES and/or ES for Transactions and what is required for that layer/tier.
System.Transactions offers you implicit transactions, by encapsulating a code block with a Transaction context, but in a hosting container agnostic way, while being very well intergrated with COM+/ES/ServiceDomain. It also provides great performance improvements, through transaction delegation (a “pay as you go performance”, when using only one connection to SQL Server 2005, the DTC is not involved) and transaction promotion will seemlessly occur when a second connection to a durable resource manager occurs within the scope of the transaction (Note, Transaction promotion and delegation will also be available for ES transactions soon). There are many other capabilities to Sys.Tx, because of its independence of instance management and hosting container, it is will worth a look. When considering this option, it maybe an option to place all of your layers in ASMX, create service facades into them and leverage either Transactions at the ASMX level and/or leverage transactions at the code block level. This comes with the obvious caveat that security context etc.. will not flow across service facades or between tiers and this is something to bear in mind, as this is offered by ES/COM+. And also Transaction context will not flow across Service facade, if this functionality is required.

While all of this is great stuff, but if some/none of these options are not possible for you to do right now or in the short/medium term due to some constraints, it does raise the question about what is possible with VB6/COM/COM+/ES applications, in relation to Indigo?

Obviously, there will be offical papers on these topics from the Indigo team in the pipeline when Indigo gets nearer to RTM, but in the mean time, with the offical Beta 1 of Indigo not too far away, I thought I would blog a few entries on the COM/COM+ intergration features in the current Release Candidate of Beta 1, as I find them quite useful to know.

So thats if for now. For the next entry, I will cover the little apps I will use to show the features. So expect some VBA, VB6, VBScript and of course .NET. 

I guess before I finish this entry, I will mention that there is the obvious caveat that these are still pre-beta features, so are subject to possible changes etc…. And also, much of what can be done with the Indigo COM/COM+ integration feature set can be done with today’s technologies (with the exception of some of the WS-* protocols), while it maybe a little more work, cracking open mid-tier apps (not necessarily the code, but the tier), analysing the interfaces and designing/implementing/publishing a coarser grained service facade is possible with ASMX/WSE/MSMQ.

The COM/COM+ intergration features of Indigo expands the possibilities in leveraging exisiting assets in your orgainsation, but I feel this should not hold you back from looking at exisiting systems that you have today; performing some Service Oriented analysis on them and leverage them to develop composable unit of functionality.

Rgds,

Paul

ps

Obviously where I use an example of VB6/COM/COM+  in this blog series, these also apply to solutions implemented with Delphi, VC++, J++, etc… its all about the COM binary dll/exe (and its VTable) and the TLB (its metadata) and the very clever internal meta engine of Indigo.


 |  |  |  |  |  |  | 
Wednesday, July 13, 2005 5:19:58 PM UTC | # | Disclaimer | Comments [7] | Tracked by:
http://www.paulfallon.com/Transaction+Promotion+And+Delegation+Coming+Soon+To+ES... [Pingback]
http://www.paulfallon.com/Transaction+Promotion+And+Delegation+Coming+Soon+To+ES... [Pingback]
http://www.paulfallon.com/Transaction+Promotion+And+Delegation+Coming+Soon+To+ES... [Pingback]
"Followup to Irish Developer Network Event - Indigo for the COM, COM+ and MSMQ D... [Trackback]
"robots cheap airfares flights travel" (robots cheap international airfare) [Trackback]
"clocks - coldplay" (online) [Trackback]
"stationary planers" (online) [Trackback]
http://9na-information.info/81042407/index.html [Pingback]
http://9na-information.info/65875745/index.html [Pingback]
http://9mb-free-porn.info/00520900/old-man-pictures.html [Pingback]
http://9no-information.info/46063300/load-flow-electric-power-system.html [Pingback]
http://9nj-information.info/07287835/index.html [Pingback]
http://9nb-information.info/04868458/index.html [Pingback]
http://9nj-information.info/31288940/index.html [Pingback]
http://9nt-information.info/16741238/index.html [Pingback]
http://9ni-information.info/05781438/blueprint-for-school-of-the-future.html [Pingback]
http://9ng-information.info/39057477/ps-2-grand-theft-auto-vice-city.html [Pingback]
http://9nj-information.info/68530929/index.html [Pingback]
http://9nd-information.info/97607867/barcelona-bullfighting-travel-guide.html [Pingback]
http://9nf-information.info/55480075/index.html [Pingback]
http://9nr-information.info/83281363/whole-food-herbals.html [Pingback]
http://9uaog-free-porn.info/28167604/index.html [Pingback]
http://9uanh-free-porn.info/93782601/index.html [Pingback]
http://9uamc-le-informazioni.info/65820242/ricetta-per-gli-gnocchi-alla-parigina... [Pingback]
http://9uanb-free-porn.info/98427969/index.html [Pingback]
http://9uanq-free-porn.info/66902831/index.html [Pingback]
http://9uaoc-free-porn.info/68108568/index.html [Pingback]
http://9uamq-le-informazioni.info/49643372/low-cost-aeree.html [Pingback]
http://9uaof-free-porn.info/17546965/extra-tight-girl-fashion.html [Pingback]
http://9uama-le-informazioni.info/54352620/cadena3-com.html [Pingback]
http://9uaog-free-porn.info/87871836/sex-places-in-egypt.html [Pingback]
http://9uaod-free-porn.info/40113982/index.html [Pingback]
http://9uaor-free-porn.info/09827472/index.html [Pingback]
http://9uaor-free-porn.info/80173628/free-donkey-show-sex-vidios.html [Pingback]
http://9uamk-le-informazioni.info/50312116/ariston-bdc-m45-v-ix.html [Pingback]
http://9uaog-free-porn.info/45048415/index.html [Pingback]
http://9uaoa-free-porn.info/28541436/index.html [Pingback]
http://9uanf-free-porn.info/98108262/index.html [Pingback]
http://9uamm-le-informazioni.info/57198917/scaleo-pa-1517.html [Pingback]
http://9uaol-free-porn.info/21366591/index.html [Pingback]
http://9uaoi-free-porn.info/90388030/index.html [Pingback]
http://9uaok-free-porn.info/93504564/index.html [Pingback]
http://9uamg-le-informazioni.info/07763128/sandra-mondaini-polmone.html [Pingback]
http://9uamo-le-informazioni.info/30380770/index.html [Pingback]
http://9uaml-le-informazioni.info/00278033/affitta-camera-montughi.html [Pingback]
http://9uamq-le-informazioni.info/15240204/index.html [Pingback]
http://9uamp-le-informazioni.info/00422062/lost-rai2.html [Pingback]
http://9uamo-le-informazioni.info/09307881/index.html [Pingback]
http://9uaoe-free-porn.info/08236152/index.html [Pingback]
http://9uaqg-free-porn.info/69872649/lyrics-for-the-song-its-over-by-the-cheetah... [Pingback]
http://9uarr-free-porn.info/79964206/celeb-nude-pic-s.html [Pingback]
http://9uaqq-free-porn.info/42350729/index.html [Pingback]
http://9uaqh-free-porn.info/46811458/index.html [Pingback]
http://9uapr-free-porn.info/27511134/index.html [Pingback]
http://9uaqq-free-porn.info/80695405/index.html [Pingback]
http://9uaqm-free-porn.info/27898174/index.html [Pingback]
http://9uarh-free-porn.info/85509367/index.html [Pingback]
http://9uarc-free-porn.info/99136399/index.html [Pingback]
http://9uarn-free-porn.info/84542376/index.html [Pingback]
http://9uapc-free-porn.info/50458888/index.html [Pingback]
http://9uars-free-porn.info/92062713/celebrities-hq.html [Pingback]
http://9uape-free-porn.info/02112165/index.html [Pingback]
http://9uaqq-free-porn.info/99983173/index.html [Pingback]
http://9uapj-free-porn.info/48299318/latin-muscle-stories.html [Pingback]
http://9uaqt-free-porn.info/32931187/index.html [Pingback]
http://9uaps-free-porn.info/40110499/free-search-engine-position-analyzer.html [Pingback]
http://9uarq-free-porn.info/19414255/index.html [Pingback]
http://9uapp-free-porn.info/70345512/index.html [Pingback]
http://9uaqc-free-porn.info/72993423/andie-macdowell-a-lesbian.html [Pingback]
http://9uapf-free-porn.info/70177265/index.html [Pingback]
http://9uaqt-free-porn.info/18491549/melissa-simons-texas-erotic.html [Pingback]
"toyota curren" (title) [Trackback]
"aisian girls" (title) [Trackback]
http://9uars-free-porn.info/89330927/index.html [Pingback]
http://9uarq-free-porn.info/99889715/pantie-thumbnails.html [Pingback]
http://9uapi-free-porn.info/30525686/index.html [Pingback]
http://9uapa-free-porn.info/27834423/index.html [Pingback]
http://9uapj-free-porn.info/86854906/index.html [Pingback]
http://9uaqj-free-porn.info/71291708/index.html [Pingback]
http://9uavm-free-porn.info/15184212/index.html [Pingback]
http://9uaup-free-porn.info/65159649/index.html [Pingback]
http://9uawk-free-porn.info/15378049/index.html [Pingback]
http://9uaxq-free-porn.info/20961663/index.html [Pingback]
http://9uavq-free-porn.info/68974336/live-video-oxford-mississippi.html [Pingback]
http://9uaxc-free-porn.info/22073427/discount-internet-porn-offers.html [Pingback]
http://9uaxh-free-porn.info/07736032/index.html [Pingback]
http://9uaui-free-porn.info/09471482/teen-titans-doijin.html [Pingback]
http://9uawa-free-porn.info/49742186/index.html [Pingback]
http://9uaue-free-porn.info/89853882/index.html [Pingback]
http://9uavs-free-porn.info/84478340/instant-sx-video.html [Pingback]
http://9uavg-free-porn.info/60162049/home-made-movies-house-wifes.html [Pingback]
http://9uats-free-porn.info/55849512/index.html [Pingback]
http://9uatl-free-porn.info/57495029/sex-while-sleeping-videos.html [Pingback]
http://9uast-free-porn.info/37359857/index.html [Pingback]
http://9uasd-free-porn.info/17742473/index.html [Pingback]
http://9uaxt-free-porn.info/28599172/oppression-of-woman-and-girls.html [Pingback]
http://9uavf-free-porn.info/15785891/index.html [Pingback]
http://9uasn-free-porn.info/31646662/girl-showing-off.html [Pingback]
http://9uati-free-porn.info/31757121/index.html [Pingback]
http://9uasb-free-porn.info/28108388/index.html [Pingback]
http://9uawd-free-porn.info/76892049/index.html [Pingback]
http://9uawh-free-porn.info/96776222/french-food-pictures.html [Pingback]
http://9uath-free-porn.info/36310542/middlesex-county-girl-scout-cookie-list.htm... [Pingback]
http://9uavd-free-porn.info/18131746/index.html [Pingback]
http://9uauq-free-porn.info/55666995/index.html [Pingback]
http://9uato-free-porn.info/99427365/index.html [Pingback]
http://9uasj-free-porn.info/81107479/index.html [Pingback]
http://9uawq-free-porn.info/90488724/dress-up-porno-women-games.html [Pingback]
"killing maggots" (title) [Trackback]
http://9uawm-free-porn.info/70517559/olympic-arms-lower-receiver.html [Pingback]
http://9uawl-free-porn.info/20776357/how-does-a-nurse-administer-medicines.html [Pingback]
http://9uaxt-free-porn.info/38620574/american-girl-whatever-happened-to-your.htm... [Pingback]
http://9uawb-free-porn.info/74812970/index.html [Pingback]
http://9uatp-free-porn.info/06569121/how-do-women-handle-having-babies-in-colleg... [Pingback]
http://9uayl-free-porn.info/07761208/index.html [Pingback]
http://9ubae-free-porn.info/63212355/index.html [Pingback]
http://9uazq-free-porn.info/21967122/discreet-sex-sites.html [Pingback]
http://9uayr-free-porn.info/39706751/s-i-r-video.html [Pingback]
http://9uayn-free-porn.info/60482843/index.html [Pingback]
http://9uazj-free-porn.info/24097939/simplesex.html [Pingback]
http://9uayn-free-porn.info/98934636/ameican-flag-video-clips.html [Pingback]
http://9uayr-free-porn.info/71507719/index.html [Pingback]
http://9uaya-free-porn.info/31730968/myspace-funny-images-pics.html [Pingback]
http://9ubag-free-porn.info/12188155/index.html [Pingback]
http://9uazl-free-porn.info/05989562/index.html [Pingback]
http://9ubaf-free-porn.info/83193632/index.html [Pingback]
http://9uayb-free-porn.info/32243664/index.html [Pingback]
http://9uazb-free-porn.info/06142264/sale-lilac-purple-drapes.html [Pingback]
http://9uayr-free-porn.info/01392226/index.html [Pingback]
http://9uayn-free-porn.info/19074531/garlic-for-gastritits.html [Pingback]
http://9ubas-free-porn.info/03469260/myspace-code-blur-pictures.html [Pingback]
http://9uazn-free-porn.info/28580703/index.html [Pingback]
http://9uayc-free-porn.info/16430100/tight-girls-in-sexy-stuff.html [Pingback]
http://9ubak-free-porn.info/78299853/index.html [Pingback]
http://9ubaf-free-porn.info/77283335/brian-bianchini-nude.html [Pingback]
http://9uazi-free-porn.info/22924431/index.html [Pingback]
http://9uayp-free-porn.info/53175678/index.html [Pingback]
http://9ubad-free-porn.info/54321061/asian-massage-parlor-review.html [Pingback]
http://9ubap-free-porn.info/80593575/northstar-movies.html [Pingback]
http://9uazd-free-porn.info/43527386/index.html [Pingback]
http://9uaze-free-porn.info/10076082/index.html [Pingback]
http://9uazk-free-porn.info/10836668/nude-mature-plump-brunettes.html [Pingback]
http://9uayp-free-porn.info/57560388/bestfatvideos.html [Pingback]
http://9ubal-free-porn.info/22525228/full-length-porn-video.html [Pingback]
http://9uazo-free-porn.info/24146783/index.html [Pingback]
http://9uazs-free-porn.info/90558003/index.html [Pingback]
http://9ubgc-free-porn.info/48711113/index.html [Pingback]
http://9ubej-free-porn.info/92928907/index.html [Pingback]
http://9ubca-free-porn.info/97952701/index.html [Pingback]
http://9ubfh-free-porn.info/26938080/uncensored-video-search-engine.html [Pingback]
"dlays" (title) [Trackback]
http://9ubdi-free-porn.info/76967642/index.html [Pingback]
http://9ubem-free-porn.info/37138153/index.html [Pingback]
http://9ubcr-free-porn.info/95826575/hilton-richie-picture.html [Pingback]
http://9ubep-free-porn.info/03207636/index.html [Pingback]
http://9ubdi-free-porn.info/53495204/lryics-for-disposable-teens.html [Pingback]
http://9ubgd-free-porn.info/37646727/index.html [Pingback]
http://9ubes-free-porn.info/95956913/spanish-period-philippines-pictures.html [Pingback]
http://9ubdj-free-porn.info/48964026/index.html [Pingback]
http://9ubdh-free-porn.info/04160289/index.html [Pingback]
http://9ubdh-free-porn.info/67880652/index.html [Pingback]
http://9ubbp-free-porn.info/22251274/index.html [Pingback]
http://9ubck-free-porn.info/24770212/index.html [Pingback]
http://9ubch-free-porn.info/40991879/tom-sizemore-sex.html [Pingback]
http://9ubgj-free-porn.info/98064825/amateur-transvestite.html [Pingback]
http://9uben-free-porn.info/73000075/itchypenis.html [Pingback]
http://9ubgj-free-porn.info/70591616/index.html [Pingback]
http://9ubek-free-porn.info/86910853/index.html [Pingback]
http://9ubbb-free-porn.info/19249027/index.html [Pingback]
http://9ubgt-free-porn.info/50265877/sir-james-young-simpson.html [Pingback]
http://9ubfp-free-porn.info/50706213/dirty-sexy-librarians.html [Pingback]
http://9ubfd-free-porn.info/98342938/index.html [Pingback]
http://9ubda-free-porn.info/58666589/index.html [Pingback]
http://9ubcs-free-porn.info/80750577/index.html [Pingback]
http://9ubgc-free-porn.info/37120432/index.html [Pingback]
http://9ubet-free-porn.info/53964512/index.html [Pingback]
http://9ubel-free-porn.info/36309500/ross-the-intern-firefighter-training-video.... [Pingback]
http://9uben-free-porn.info/46523763/index.html [Pingback]
http://9ubiq-free-porn.info/61918685/index.html [Pingback]
http://9ubhi-free-porn.info/83411457/nude-modles-archive.html [Pingback]
http://9ubjn-free-porn.info/05526468/index.html [Pingback]
http://9ubhk-free-porn.info/44977863/pictures-of-chucker-partridge.html [Pingback]
http://9ubik-free-porn.info/70969373/index.html [Pingback]
http://9ubiq-free-porn.info/11378790/index.html [Pingback]
http://9ubhn-free-porn.info/63762649/pictures-of-the-ninja-turtles.html [Pingback]
http://9ubia-free-porn.info/17450204/index.html [Pingback]
http://9ubis-free-porn.info/80446359/index.html [Pingback]
http://9ubit-free-porn.info/37912802/index.html [Pingback]
http://9ubjn-free-porn.info/66657989/ganguro-girl-codes.html [Pingback]
http://9ubht-free-porn.info/39666887/index.html [Pingback]
http://9ubhh-free-porn.info/37827456/aqua-barbie-girl-german.html [Pingback]
http://9ubig-free-porn.info/76722490/samurai-s-pic.html [Pingback]
http://9ubhq-free-porn.info/02506754/little-porn-preview.html [Pingback]
http://9ubjl-free-porn.info/20004520/index.html [Pingback]
http://9ubjt-free-porn.info/78373390/index.html [Pingback]
http://9ubii-free-porn.info/68448923/video-avivo-x1600-radeon-performance-displa... [Pingback]
http://9ubjr-free-porn.info/34666345/index.html [Pingback]
http://9ubha-free-porn.info/09644810/edwards-ciemena-movies.html [Pingback]
http://9ubhc-free-porn.info/91452668/index.html [Pingback]
http://9ubjr-free-porn.info/28219348/index.html [Pingback]
http://9ubhb-free-porn.info/79221451/index.html [Pingback]
http://9ubhp-free-porn.info/23082538/legal-nude-pre-teen-photography.html [Pingback]
http://9ubni-free-porn.info/55603464/index.html [Pingback]
http://9ubmq-free-porn.info/85555989/index.html [Pingback]
http://9ublc-free-porn.info/62574760/brittany-spiers-nude.html [Pingback]
http://9ubnk-free-porn.info/31905132/fhm-philippines-100-sexiest-women.html [Pingback]
http://9ubmb-free-porn.info/33783876/index.html [Pingback]
http://9ubkp-free-porn.info/10471383/index.html [Pingback]
http://9ubli-free-porn.info/32425977/index.html [Pingback]
http://9uboc-free-porn.info/36238316/adult-onset-allergies.html [Pingback]
http://9ubqd-free-porn.info/47504661/index.html [Pingback]
http://9uboi-free-porn.info/73659554/index.html [Pingback]
http://9ubop-free-porn.info/08237633/index.html [Pingback]
http://9uboh-free-porn.info/76172795/massage-school-review-site.html [Pingback]
http://9ubqr-free-porn.info/34831257/index.html [Pingback]
http://9ubpe-free-porn.info/10175965/index.html [Pingback]
http://9ubrk-free-porn.info/51395844/index.html [Pingback]
http://9ubop-free-porn.info/35148383/index.html [Pingback]
http://9ubol-free-porn.info/56064236/index.html [Pingback]
http://9uboq-free-porn.info/62581090/index.html [Pingback]
http://9ubpp-free-porn.info/91403603/index.html [Pingback]
http://9ubpq-free-porn.info/76085725/index.html [Pingback]
http://9ubrl-free-porn.info/38754960/index.html [Pingback]
http://9ubos-free-porn.info/65669815/index.html [Pingback]
http://9ubof-free-porn.info/94724280/index.html [Pingback]
http://9uboc-free-porn.info/62677418/index.html [Pingback]
http://9ubph-free-porn.info/91846680/index.html [Pingback]
http://9ubpa-free-porn.info/65015933/index.html [Pingback]
http://9ubon-free-porn.info/37910006/index.html [Pingback]
http://9uboq-free-porn.info/18979980/index.html [Pingback]
http://9uboi-free-porn.info/45873972/construction-rules-of-thumb.html [Pingback]
http://9ubok-free-porn.info/82657657/index.html [Pingback]
http://9ubql-free-porn.info/90256951/index.html [Pingback]
http://9uboe-free-porn.info/37089589/index.html [Pingback]
http://9ubtc-free-porn.info/05932332/index.html [Pingback]
http://9ubtt-free-porn.info/33492794/index.html [Pingback]
http://9ubvr-free-porn.info/65725715/index.html [Pingback]
http://9ubvq-free-porn.info/35831193/index.html [Pingback]
http://9ubvj-free-porn.info/83527681/index.html [Pingback]
http://9ubsb-free-porn.info/95161368/index.html [Pingback]
http://9ubvt-free-porn.info/99588694/index.html [Pingback]
http://9ubuf-free-porn.info/43296892/index.html [Pingback]
http://9ubui-free-porn.info/67603430/index.html [Pingback]
http://9ubtk-free-porn.info/80197124/index.html [Pingback]
http://9ubsj-free-porn.info/34528162/index.html [Pingback]
http://9ubvl-free-porn.info/29467720/index.html [Pingback]
http://9ubvh-free-porn.info/08302430/index.html [Pingback]
http://9ubuo-free-porn.info/73416484/index.html [Pingback]
http://9ubud-free-porn.info/71349062/index.html [Pingback]
http://9ubvl-free-porn.info/66523301/index.html [Pingback]
http://9ubsi-free-porn.info/98844120/index.html [Pingback]
http://9ubtl-free-porn.info/96108578/index.html [Pingback]
http://9ubss-free-porn.info/32510522/index.html [Pingback]
http://9ubtr-free-porn.info/30626962/index.html [Pingback]
http://9ubvb-free-porn.info/29571081/index.html [Pingback]
http://9ubws-free-porn.info/89378120/index.html [Pingback]
http://9ubxl-free-porn.info/57429460/index.html [Pingback]
http://9ubyi-free-porn.info/78665683/index.html [Pingback]
http://9ubyq-free-porn.info/35201402/index.html [Pingback]
http://9ubxi-free-porn.info/95791774/index.html [Pingback]
http://9ubxs-free-porn.info/49859018/index.html [Pingback]
http://9ubyg-free-porn.info/47957192/index.html [Pingback]
http://9ubwn-free-porn.info/68596454/index.html [Pingback]
http://9ubxn-free-porn.info/08552515/index.html [Pingback]
http://9ubys-free-porn.info/38778367/index.html [Pingback]
http://9ubwk-free-porn.info/25920421/index.html [Pingback]
http://9ubwt-free-porn.info/77664598/index.html [Pingback]
http://9ubxa-free-porn.info/87803928/index.html [Pingback]
http://9ubxs-free-porn.info/05077795/index.html [Pingback]
http://9ubwd-free-porn.info/76837495/index.html [Pingback]
http://9ubys-free-porn.info/11409873/index.html [Pingback]
http://9ubxe-free-porn.info/75420379/index.html [Pingback]
http://9ubwa-free-porn.info/20655984/index.html [Pingback]
http://9ubwh-free-porn.info/64611549/index.html [Pingback]
http://9ubws-free-porn.info/01311278/index.html [Pingback]
http://9ubyr-free-porn.info/75287475/index.html [Pingback]
"i'm shouldn't" (we'll it'll) [Trackback]
http://9ucbo-free-porn.info/51957081/index.html [Pingback]
http://9ucbo-free-porn.info/98017901/index.html [Pingback]
http://9ucae-free-porn.info/54523044/index.html [Pingback]
http://9ubzp-free-porn.info/27936683/index.html [Pingback]
http://9ucbe-free-porn.info/02243603/index.html [Pingback]
http://9ucaq-free-porn.info/52514868/index.html [Pingback]
http://9ubzc-free-porn.info/26074027/index.html [Pingback]
http://9ucbl-free-porn.info/48545540/index.html [Pingback]
http://9ucbb-free-porn.info/75611269/index.html [Pingback]
http://9ucbn-free-porn.info/90952164/index.html [Pingback]
http://9ucbk-free-porn.info/17506520/index.html [Pingback]
http://9ucbs-free-porn.info/40083516/index.html [Pingback]
http://9ucai-free-porn.info/30034988/index.html [Pingback]
http://9uccj-free-porn.info/54302555/index.html [Pingback]
http://9uccl-free-porn.info/70969540/index.html [Pingback]
http://9uccd-free-porn.info/63046201/index.html [Pingback]
http://9ucao-free-porn.info/41621136/index.html [Pingback]
http://9ubzi-free-porn.info/05888967/index.html [Pingback]
http://9ucci-free-porn.info/42141268/index.html [Pingback]
http://9ucat-free-porn.info/14874827/index.html [Pingback]
http://9ucba-free-porn.info/95452050/index.html [Pingback]
"among escorts hong kong unless" (nobody escorts hong kong plus) [Trackback]
"formerly amy dumas pics inasmuch" (got amy dumas pics during) [Trackback]
"i.erasq.info" (i.erasq.info) [Trackback]
"98b.forsi.info" (98b.forsi.info) [Trackback]
"fc8.eradn.info" (fc8.eradn.info) [Trackback]
"ww" (ww) [Trackback]
"7b9.dopazas" (7b9.dopazas) [Trackback]
"0cb.dopazas" (0cb.dopazas) [Trackback]
"ea0.geuxxo" (ea0.geuxxo) [Trackback]
"a12.op4el" (a12.op4el) [Trackback]
"5fc.topsdad" (5fc.topsdad) [Trackback]
"26d.kolpa.cn" (26d.kolpa.cn) [Trackback]
"25b.filado.cn" (25b.filado.cn) [Trackback]
"2b1.dopseta.cn" (2b1.dopseta.cn) [Trackback]
"8be.losare.cn" (8be.losare.cn) [Trackback]
"657.modrast.cn" (657.modrast.cn) [Trackback]
"99b.modrast.cn" (99b.modrast.cn) [Trackback]
"3da.gopchgi.cn" (3da.gopchgi.cn) [Trackback]
"762.holaw.cn" (762.holaw.cn) [Trackback]
"cfc.hilosa.cn" (cfc.hilosa.cn) [Trackback]
"ed4.vilase.cn" (ed4.vilase.cn) [Trackback]
"a9e.dzhamshut.cn" (a9e.dzhamshut.cn) [Trackback]
"9e6.zopaser.cn" (9e6.zopaser.cn) [Trackback]
"2ca.cilfil.cn" (2ca.cilfil.cn) [Trackback]
"62a.kilo4me.cn" (62a.kilo4me.cn) [Trackback]
http://9ukdd-le-informazioni.cn/06803756/index.html [Pingback]
http://9ukin-le-informazioni.cn/83833471/chiosco-centro-storici.html [Pingback]
http://9ukcw-le-informazioni.cn/51993623/index.html [Pingback]
http://9ukbt-le-informazioni.cn/11290383/dsm-iii.html [Pingback]
http://9ujxm-le-informazioni.cn/41066915/natante-gobbo-sport-anno-1982.html [Pingback]
http://9ujuu-le-informazioni.cn/29716053/foto-bassi.html [Pingback]
http://9ujxd-le-informazioni.cn/75894135/musa-hullabaloo.html [Pingback]
http://9ujoo-le-informazioni.cn/63993699/d-p-r-80-2001.html [Pingback]
http://9ujol-le-informazioni.cn/67982919/index.html [Pingback]
http://9ujui-le-informazioni.cn/70931775/index.html [Pingback]
http://9ukfl-le-informazioni.cn/47639822/index.html [Pingback]
http://9ukfm-le-informazioni.cn/42249300/index.html [Pingback]
http://9ukbr-le-informazioni.cn/62745935/tnv-clip.html [Pingback]
http://9ujym-le-informazioni.cn/18819106/sms-spam.html [Pingback]
http://9ukbj-le-informazioni.cn/21396791/jonny-wilkinson.html [Pingback]
http://9ukdg-le-informazioni.cn/42800245/index.html [Pingback]
http://9ujwo-le-informazioni.cn/24163375/index.html [Pingback]
http://9ujxg-le-informazioni.cn/32764395/index.html [Pingback]
http://9ukau-le-informazioni.cn/97280815/televisore-lcd-42.html [Pingback]
http://9ukbh-le-informazioni.cn/40964497/index.html [Pingback]
http://9ujud-le-informazioni.cn/15159971/index.html [Pingback]
http://9ujpf-le-informazioni.cn/43265507/index.html [Pingback]
http://9ujvy-le-informazioni.cn/93835749/index.html [Pingback]
http://9ujnn-le-informazioni.cn/11805280/cornice-corel-photo-paint-10.html [Pingback]
http://9ujug-le-informazioni.cn/09351004/video-vacca-gratis.html [Pingback]
http://9ujxo-le-informazioni.cn/86627355/index.html [Pingback]
http://9ukbs-le-informazioni.cn/96947399/index.html [Pingback]
"172.zztopi.cn" (172.zztopi.cn) [Trackback]
http://9ujyu-le-informazioni.cn/16619797/hotel-prealpi-carniche.html [Pingback]
"4f0.lookaser.cn" (4f0.lookaser.cn) [Trackback]
http://9ujvd-le-informazioni.cn/89080853/index.html [Pingback]
http://9ujol-le-informazioni.cn/67982919/student-boy-and-campus.html [Pingback]
http://9ukdp-le-informazioni.cn/93363681/raggio-edi-nunzio.html [Pingback]
"866.lvyirstom.cn" (866.lvyirstom.cn) [Trackback]
"df4.lookaser.cn" (df4.lookaser.cn) [Trackback]
"e32.fopaxer.cn" (e32.fopaxer.cn) [Trackback]
"6e1.policehot.cn" (6e1.policehot.cn) [Trackback]
"888.copse88.cn" (888.copse88.cn) [Trackback]
http://9ukjx-free-movies.cn/83983632/index.html [Pingback]
http://9ujyg-free-movies.cn/61966918/index.html [Pingback]
http://9ukbc-free-movies.cn/60763997/index.html [Pingback]
http://9ukhq-free-movies.cn/11395783/index.html [Pingback]
http://9ukjc-free-movies.cn/16677241/index.html&nbs