|
Classes should *never* be marked as "sealed" because it ruins the entire model of type compatibility in exchange for dubious protections. .NET has already taken away my determininistic finalization. Must it also take away my ability to derive?
Chris Sells
,
Thursday, January 23, 2003 2:02 PM
The motivation for sealed is, at least in theory, performance. If you have a sealed class, you never need to compile a virtual function call; the CLR always know exactly what function a call goes to (since it can never be a derived class) so it's faster.
In practice, you're right - it's an excuse for the framework guys to be lazy. Unseal Winforms!
Chris Tavares,
Thursday, January 23, 2003 2:42 PM
Have to disagree as well. Sealed has a very specific and useful value. You can't assume that every class was written to be derived from.
Don Box recommends all classes be initially sealed, and I tend to agree with him. Inheritance is an identity issue, not a code re-use issue. If anything, we could use better support for aggregation.
Brad Wilson,
Thursday, January 23, 2003 2:46 PM
Actually, the more I think about this, your problem is not one of sealed classes, but a lack of interfaces. If they'd defined IImageList instead of ImageList, then you'd be much better off.
Brad Wilson,
Thursday, January 23, 2003 2:55 PM
'internal' is much more evil. (winforms is the culprit here, too)
Rick Childress,
Thursday, January 23, 2003 4:37 PM
sealed isn't a requirement for performance. Sun's hotspot JVM will attempt to make a potential virtual function call non-virtual and backs out if it detects it really is polymorphic.
Microsoft's CLR v1 doesn't do this.
Richard Birkby,
Thursday, January 23, 2003 5:30 PM
I can't remember exactly the way Joshua Bloch phrased it in "Effective Java" but I think it was something like "design for inheritance, or else forbid it"...seems like good advice to me.
Joseph Cooney,
Thursday, January 23, 2003 6:04 PM
While you're at it, unseal the Connection classes in the ADO.NET Managed Providers.
Shawn Wildermuth,
Thursday, January 23, 2003 7:11 PM
What I'm saying is that the conventional wisdom of "design for inheritance or disable it" from which the "sealed" keyword came is *wrong*!!!
Inheritance provides two features: implementation reuse and type compatibility. Implementation reuse I can live w/o because I can also do that with containment and delegation.
However, there's nothing I can do to provide type compatibility with a sealed class. That wouldn't be a problem except that most of the .NET framework depends on classes as arguments instead of interfaces.
But even if we blame the designers of the .NET framework for taking classes instead of interfaces, I still hate sealed. Sealed pre-supposes that the designer of the base class either 1) knew everything it'd ever be used for or 2) was too scared to let someone else try their own stuff with it.
#2 is the motivation for sealed in the first place and it must stop. Half of all the coolest things I've ever been able to do are based deriving from a class and doing stuff that the designer of the class never had in mind and if that's been turned off, I can't do it.
#1 is specious. No one can ever know everything that will be done by the deriving class. The real truth of the matter is that a deriving class *must* be intimately entwined with the base class implementation and a deriving class *must* be thoroughly tested as integrating properly with that base class.
The sealed keyword is worthless at best and debilitating at best. It must go.
Chris Sells,
Thursday, January 23, 2003 8:38 PM
To expand on Brad's point: Don Box's recommendation for sealing classes until you've made sure that they're safe for use as bases classes is on page 74 of "Essential .NET". I agree with this viewpoint. It makes sense to me.
If I was putting out component assemblies to a developer market (I don't; we put out applications) I would definitely want to seal those public types that I hadn't designed to be derived from (or that I hadn't tested in that role).
I understand Chris's view, but I simply disagree with it. As the FCL is developed over the years, maybe more types will become unsealed, and this will go a long way to alleviate Chris's frustration.
As for regarding "internal" as evil (Rick), I happen to think that it's the most important keyword addition to the C-based language family, and makes writing components in C# so much easier than before (i.e. in COM).
Andrew Webb,
Friday, January 24, 2003 3:08 AM
Maybe this is the thing: 'sealed' (and 'internal') aren't instrinsically evil, but their widespread use in the FCL is causing frustration in the more adventurous end of the developer market.
Andrew Webb,
Friday, January 24, 2003 3:13 AM
You're right, Andrew. Internal may not be 'evil', but I think WinForms is a bit overzealous in it's use.
Rick Childress,
Friday, January 24, 2003 8:53 AM
When talking with Don about this last night, I said that "sealed" was the sign of the end of OO. What it signifies is that the model works except, oops, we have to turn it off here, and here, and again over here, oh hell, let's turn off one of the key features of OO by default and then, maybe, if we feel like it, turn it back on again.
"sealed" is the C# equivalent of the C++ "mutable", which sounded the death-knell of "const" as applied to member functions. It's a signal that the model itself is broken. OO is useful, but the very idea that you can use a class without understanding a great deal about its behavior as separate from the typing details is flawed. Sealed tries to enforce that flawed idea and just makes trouble in the process.
Chris Sells,
Friday, January 24, 2003 10:17 AM
I agree that in an ideal world, all objects should allow inheritance / extension. However, the ideal world is not the world we live in. We live in a world with schedules and deadlines. As a result, productivity is important. The "sealed" keyword allows developers to be productive, designing their systems to be flexible where they must, but not designing flexibility into everything simply for flexibility's sake.
Jesse Ezell,
Friday, January 24, 2003 10:49 AM
I used "sealed" for the fist time last week. I defined an interface with a function that returned an array of objects. I then defined a <I>null</I> implementation following the null object pattern. This implementation returns an array with zero elements. I added the sealed key word to this implementation more as a documentation piece than anything else. Why anyone would want to override this object is beyond me. I could just as easily take it off and the design would not suffer. But I look at it as an example of self-documentation.
I do agree that like many <I>cool new features</I> it was overused.
Jim Argeropoulos,
Friday, January 24, 2003 12:13 PM
I think that Jesse's point is spot-on, and is the key to it all. It enables you to be more productive, and Productivity is the bottom-line benefit of .NET.
Also: if I were writing an application, I would probably seal all (non-abstract) classes. If I were writing a component, sealing would be considered on a class-by-class basis. But if I was writing a framework, I would expect to leave most classes unsealed and designed for derivation. In the framework scenario, I would want to have a pretty damn good argument as to why I was sealing a class.
Andrew Webb,
Friday, January 24, 2003 12:48 PM
Productivity?!? "sealed" is all about taking away what I can do and forcing me into half-baked work-arounds. That's as unproductive as I can imagine short of someone taking a hammer to my fingers.
Chris Sells,
Friday, January 24, 2003 3:26 PM
Yes, but the productivity mentioned is the productivity of the developer designing the solution originally. Any language or feature used incorrectly can cause a lack of productivity for those who have to work with the code that mis-uses it. However, this is not the fault of the language, but of the designer. It is the original designer's job to consider which parts of his solution that are capable of extension and those which are not and make adjustments accordingly.
Let's say for instance that something was marked sealed for a good reason. You come in and try to override the class, thinking "it makes sense that I should be able to do this," you ship your product, and then 6 months later you have a pile of 1000 bug reports all coming from an undocumented side effect of your override (maybe you needed to call some protected method somewhere or initialize a protected field). Now, your products quality has been degraded and there was nothing you could do to stop it from happening.
If, instead, the developers had marked this class as sealed, you would have found some other way to do what you were wanting to do and the issue wouldn't have come up.
The addition of AOP to mainstream languages could efficiently solve many of types of problems which are usually addressed with inheritance in the current OO model (not a cure-all, but definately a step in the right direction).
Jesse Ezell,
Friday, January 24, 2003 4:21 PM
I think that any use of sealed in a framework makes that framework less flexible. Although there are sometimes valid reasons for doing so, slapping on the sealed keyword limits the options of developers that try to leverage the class.
What frustrates me about sealed in the .NET Framework is when there's no workaround. Given sealed class B, is it so difficult to give me abstract class A that B derives from, so that I can work with *that*? Or at least interface IB so that I can provide a ground-up implementation? What really bugs me is that I don't design code like this - to revisit Chris' original beef, I would never (okay, rarely) lock down public interfaces on my types to accept only a sealed class as a parameter, and that's been done in a number of places. I think it's an inflexible design, so the aesthetics irritate me.
But that's just my grumpy-assed opinion.
Mickey Williams,
Friday, January 24, 2003 5:28 PM
Jesse is on the money again; all of his points are good and right.
Classes exist in code for many different reasons. And not all of those reasons dictate that your classes be derivable by other programmers. In some cases, the opposite is true.
Say I want to write an application that's composed of an executable and a number of supporting DLL assemblies. It will *kill* my productivity if I have to ensure that all my public classes in the DLLs are safe to be derived from by other programmers. Those classes are not meant to be used by other programmers in the first place; they are there for the sake of the application.
I made the point earlier about sealing with respect to applications, components and frameworks. Each of these 3 types of program calls for a very different mindset when it comes to class and class hierarchy design. This very much influences whether you want to seal certain classes or not. I certainly don't agree with the view that all public classes must be unsealed, no matter what - even in a framework.
For further reading, I refer you to the GoF Design Patterns book (pages 25 - 28). See also point 7 on page 25 on the difficulties of effective subclassing.
Andrew Webb,
Friday, January 24, 2003 6:01 PM
IMHO sealed stinks.
I don’t understand the arguments <quote>If I was putting out component assemblies to a developer market (I don't; we put out applications) I would definitely want to seal those public types that I hadn't designed to be derived from (or that I hadn't tested in that role). </quote> and <quote>The "sealed" keyword allows developers to be productive, designing their systems to be flexible where they must, but not designing flexibility into everything simply for flexibility's sake.</quote> Could someone give me a more concrete example?
Are you protecting yourself as a developer or as a vendor?
Guy Incognito,
Friday, January 24, 2003 8:00 PM
I agree that "sealed" lets the original class developer off the hook. However, as a user of a large number of these classes, most notably the .NET Framework, sealed kills me time and again.
Sealed could be useful if:
1. No sealed class was used as an argument to a public or protected method
2. Sealed could be overridden with a "I promise not to complain to the original developer when deriving from this class w/o support" switch
#1 would save me from the problems of dead-heading the type compatibility model such that I couldn't override a type that I want to use polymorphicly.
#2 would allow me to agree with the vendor that they didn't test derivation but I'm going to and I'm a big boy.
Any stronger use of the sealed keyword on a type is an indictment of the entire OO model.
Chris Sells,
Friday, January 24, 2003 11:10 PM
Sealed isn't what sucks. Classic OO is what sucks. The model was fundamentally BAD (Broken As Designed) for everything but the simulation software where it originated.
John Cavnar-Johnson,
Friday, January 24, 2003 11:12 PM
John, I'm beginning to wonder if you're not right about that...
Chris Sells,
Friday, January 24, 2003 11:35 PM
Guy: I'm sorry you don't understand those two arguments. To me they're self-evident. And I wish I could give you a concrete example, but like I said, I write applications, not off-the-shelf components. But I would say that if a component developer takes the deliberate step of typing in "sealed" on a class, it would be to protect the developer as an individual, and the company as a vendor. He/she has decided - for whatever reasons - that the class should not be derived from at this time (if ever). If I trusted the component developer to do a good job, I personally would respect that decision.
A framework like the FCL has an awesome responsibility. It must deliver serious functionality and infrastructure to any/all .NET programmers. Said programmers will be of all different levels of ability, different goals, and will be writing different types of programs. The FCL must protect its ass, big time. If certain classes are *not* designed to be derived from, and if developers will get into trouble if they do so, then those classes should be marked as sealed.
--
Chris:
1) "I agree that "sealed" lets the original class developer off the hook."
This think this is too strong. Not all classes are in the code so that other programmers can derive from them. In some cases, sealing will have nothing to do with letting the developer off the hook. What hook ? You have the right to derive from any public class that you see in any assembly ?
2) "Sealed could be overridden with a "I promise not to complain to the original developer when deriving from this class w/o support" switch".
The real point is:- If sealing didn't exist, and instead a developer wrote in the online help "This class is not intended to be derived from. Please do not derive from it", but you *did* derive from it, would you ship your built assembly to end-users ? I know I wouldn't.
3) "Any stronger use of the sealed keyword on a type is an indictment of the entire OO model."
I just don't see it. Don't you think that sealing might be just another form of encapsulation ? (This has only just occurred to me, and I present it as an off-the-top-of-the-head thought.)
--
John:
"Sealed isn't what sucks. Classic OO is what sucks."
You know, I did C++ for 10 years, and only *now*, with C# and .NET, does OO ("Classic OO") fully and finally make sense. Now the whole thing falls into place, and works out, and finally delivers on all the promises. Finally I can write fully-OO code with ease, at speed, and at an all time low bug count. OO rocks.
--
I think the main beef here is the use of sealed in the FCL. Let's see what happens with future versions. Hopefully more and more classes will become vouchsafed as derivable, and your frustration will subside.
Andrew Webb,
Saturday, January 25, 2003 3:32 AM
From the "nasty workarounds"-department:
Derivation is not the only means to ensure type compatibility in the CLR. Proxying is another one. Lot's of classes in winforms are MarshalByRefObject. The rest is up to you ;-)
-Ingo
Ingo Rammer,
Saturday, January 25, 2003 4:19 AM
One of the most flexible features of COM was that the types and implementations were completely separate. Unfortunately .NET has failed to maintain this flexibility.
When we design a class in C# we are creating an implementation and a type, that is the publicly accessible properties and methods on the class. If the type was separate from the implementation then we would not have these problems. The sealed keyword would apply to the implementation not the type and it would mean what the author really intended, i.e. that the implementation cannot be subclassed. However the type can be reused.
The type of a class could be implicitly generated from the implementation as it is now, we just need to be able to refer to it in other implementations.
Nicko Cadell,
Saturday, January 25, 2003 10:39 AM
"Sealed isn't what sucks. Classic OO is what sucks. The model was fundamentally BAD (Broken As Designed) for everything but the simulation software where it originated."
To some degreed, I think it is along the lines of what Brooks points out in the Mythical Man Month. There are certain difficulties inherent to the software development process that just are not going to go away in the foreseeable future. Language can never really represent our idea's 100%. Even English, though semantically richer than C#, doesn't always allow us to fully explain certain concepts and ideas as easily as we would like.
From MSDN:
"Base classes are a useful way to group objects that share a common set of functionality. Base classes can provide a default set of functionality, while allowing customization though extension.
"You should add extensibility or polymorphism to your design only if you have a clear customer scenario for it. For example, providing an interface for data adapters is difficult and serves no real benefit. Developers will still have to program against each adapter specifically, so there is only marginal benefit from providing an interface. However, you do need to support consistency between all adapters. Although an interface or abstract class is not appropriate in this situation, providing a consistent pattern is very important. You can provide consistent patterns for developers in base classes. Follow these guidelines for creating base classes."
A good paper on the use of the sealed keyword (from a Java perspective, but still valid) can be found here:
http://citeseer.nj.nec.com/rd/16296199%2C527223%2C1%2C0.25%2CDownload/http://citeseer.nj.nec.com/cache/papers/cs/26124/http:zSzzSzwww.haifa.il.ibm.comzSzinfozSzplezSzpaperszSzclass.pdf/a-case-for-sealing.pdf
Jesse Ezell,
Saturday, January 25, 2003 1:53 PM
What a great thread! Of course, everyone that agrees with me is right and everyone that disagrees with me is wrong, but it was a wonderful thread never the less. : )
Chris Sells,
Saturday, January 25, 2003 2:09 PM
I responded on my blog to this thread... just to get my repsonse "on the record"...
http://www.simplegeek.com/2003/01/23.html#a115
Chris Anderson,
Saturday, January 25, 2003 6:20 PM
Chris Anderson says: "Once you allow for derivation you must test the derivation, document it, version it, etc. Basically you should only ship non-sealed classes if you have considered the ramifications of someone deriving from it."
and then he goes on further to say:
"In a perfect world we would have enough time to design all APIs for derivation, but sometimes we have to ship."
And to that, I say : P
Microsoft isn't the only one that has to ship. *We* have to ship, too. We have to take whatever Microsoft gives us and somehow make it work in the world and when it doesn't, we have to take what we've got and extend it to *make* it work. One of the major ways that I have to take stuff that doesn't yet work from MS is to *derive* from it, mostly because of the need for type compatibility.
However, I agree that there should be a way to document that class hasn't been designed or tested to allow derivation. The compiler should even run by default in "safe mode" that treats that documentation as an error when it's ignored. I don't even have any problem using the "sealed" keyword as that documentation.
*But*, I need to ship, which means that sometimes I'm going to have to derive from a class even if I'm the only one and the developer of that class never tested it. As an example, the VS.NET team accidently left BaseCodeGeneratorWithSite public and unsealed, even thought they never meant to do that. On top of that, I built a whole set of cool custom tools that generate code right inside the IDE. That's pretty damn useful, I'd say, and my tools have become pretty darn popular (as have other tools that have also leveraged this "accident"). In VS.NET 2003, MS has rectified this accident for no reason that I can think of (where you guys drowned in support calls for custom tools?), which means that I have to go back to the drawing board. Luckily, the whole thing is based on interfaces so I can get my tools running again, but if that hadn't been the case, the world would have been without those custom tools.
I *need* *need* *need* to be able to override the sealed keyword and derive from sealed base classes in the case that I need type compatibility with the base class. Make me go through hoops to get there, but *please* enable this. Your other choices are to 1) refactor the .NET Framework to use interfaces everywhere (impractical), 2) test absolutely every sealed class for the ability to derive (also seems impractical) or 3) put up with me complaining about it all the live long day (which seems the easiest from your point of view depending on how big a PITA you consider me : ).
Chris Sells,
Monday, January 27, 2003 1:26 AM
I'm beginning to see that one part of Chris's argument really makes sense; namely the desire for type compatibility with classes that are used as arguments to public or protected methods.
I'm taking away with me from this thread the following design 'principle' or guideline:-
IF I have designed a public sealed type that is intended for use by other programmers, AND that type is (or could be) used as an argument to a public or protected method, AND it might conceivably be useful for others to create types that have type compatibility with my type, AND there aren't any overriding constraints that mitigate against unsealing, THEN I *will* go the extra mile and design my type for derivation, and unseal it.
Andrew Webb,
Monday, January 27, 2003 5:05 AM
The 'final' keyword in Java is invaluable as the key way to prevent secure classes being subverted by subclasses, though that may be a consequence of the 'everything is virtual unless otherwise stated' design. If your classes methods take final classes, you can be sure of what you are getting, so by cloning the object then validating it (in that order), you can reasonably trust the supplied parameters, whether or not they come from trusted or untrusted source.
The Windows Forms example shows that somebody sealed when they didn't need to, not that sealing is invalid. Sealing has a place, but a small and special one, and image lists dont seem that place. Maybe the real problem is that .net framework is oversealed and as a closed source project you cant edit the declaration, the way you can in apache projects or in C++ header files (ever make something public?)
Effective Java goes into this topic in detail, just s/final/sealed/ and s/Object/object/ and it'll read like a C# book. There is good open discussion of mistakes they made in doing many of the java class libs. Why they continue making those mistakes therefore escapes me.
-steve
Steve Loughran,
Monday, January 27, 2003 3:37 PM
Or why not just decide to use interfaces instead of vowing to expend questionable effort on unsealing classes? (This has been mentioned above, and only dismissed as impractical in the case of refactoring .NET entirely.)
This is the advice of the AbstractInteractions entry (http://c2.com/cgi/wiki?AbstractInteractions) to the Component Design Patterns wiki (http://c2.com/cgi/wiki?ComponentDesignPatterns).
Nils Jonsson,
Monday, January 27, 2003 3:38 PM
So the sealed thing in winforms is important because of SECURITY. When you download an exe by IE and execute it then it can tamper only with either
1. secure classes
2. insecure but sealed classes.
Insecure means that its implementation provides protected overridable methods or internal data structures which can GPF your program. So do not create a buffer overflow, they are sealed.
On the other hand the developers would have created a fully abstract foolproof framework but
1. winforms is just a thin layer over WINAPI
2. because of 1. it is not slow as Java's swing.
Of course sometimes it is sealed because it is SUX :)
Finally, some words about OOP. It is wrong by design because encapsulation simply does not true. An object is a byte array in memory but sometimes (mostly in my works) an object is an interconnected graph of byte arrays. In short: you cannot express an 1:N relationship in an object. You can declare a parent and a child class but you cannnot define a function what operates on the parent AND the childs.
(If you want to tell me something about static's then imagine a 1:N:M relationship.)
NoiseEHC,
Monday, January 27, 2003 3:46 PM
Has anyone figured out the rationale for why the String class is sealed?
Dave,
Monday, January 27, 2003 3:47 PM
Chris Sells said:
2) "Sealed could be overridden with a "I promise not to complain to the original developer when deriving from this class w/o support" switch".
Andrew responded:
The real point is:- If sealing didn't exist, and instead a developer wrote in the online help "This class is not intended to be derived from. Please do not derive from it", but you *did* derive from it, would you ship your built assembly to end-users ? I know I wouldn't.
I say:
Let ME make the decision whether or not to ship my derived class instead of taking the decision away but by making it physically impossible. This especially applies when the base class in question is part of a framework.
It might be a trade-off of being able to do what I want now and worrying about testing and validation when (and if) the base class changes. I'd like to have that as an option.
Jason Dossett,
Monday, January 27, 2003 3:58 PM
Hi folks, as NoiseEHC mentions, sealed can be used for security. This is why String is final in Java and I guess the same in .NET. ImageList I don't know.
When maintaining big apps it is often nice to know that the method you are working on is private or perhaps sealed/final as it makes maintenance easier (e.g. in Delphi components on forms are by default public!! In .NET Win Forms...?)
As a user of third-party libraries and components, I have occasion to _hate_ private or non-overridable methods which I want to override and I'm sure sealed non-private methods can be a pain too! Delphi's TOutline is a notorious example.
If are you writing an app - then sealed may make sense for maintenance reasons (unseal as required..., un-private only as required).
If you are writing code-for-reuse, then unless you a explicitly sealing for security then there is no excuse! IMHO :) Especially in a framework. They should try to anticipate behavioral change and expose it.
I don't agree with an attempt to theoretically explain that sealed can be 'good' if you can't design for extension. You can never design fully for extension - by definition. Following that logic, we should abandon inheritance altogether.
On the otherhand, if you think your class is quite likely to be redesigned substantially... then seal or make methods private... so nobody can use it! :)
Mat Hobbs,
Monday, January 27, 2003 4:46 PM
I really do not understand, what is so hard about making classes you can derive from? We have been doing it for decades in C++. I do not understand why anyone would want to seal a class. As an example, how about the string class? Oh, no, there would never be a need to extend that and still provide it as a compatible functional parameter or anything like that. Hello?
One of the things I hated about C# when I first started was the multitude of classes that are sealed. If you cannot write a class that is able to be derived from why write it in the first place? I would be just coding along and think, I will derive from this class and extend it to save me sooooo much time, but no, it is sealed! Is this really just to appease those moving to C# from Java?
I bite it because I have no option, but it has cost my a lot of hours for nothing.
Rocky Moore,
Monday, January 27, 2003 5:25 PM
I must admit I am not happy with sealed but a few minutes with an IL to C# converter and I have my own version - maybe we should just create a alternative .NET framework where everthing is public and unsealed - I am more concerned with the fact that I cannot protect my code (applications not classes) from naughty people seeking to copy applications or bypass license agreements etc - I was hoping when I heard the terms sealed and hidden that maybe just maybe we were going to make it harder but no. (if there is a way please let me know)
Shaun Wilde,
Tuesday, January 28, 2003 4:33 AM
AFAIK, the reason that string is sealed is that the runtime makes assumptions about the layout of string instances for perf reasons. Since string is so widely used, this may be one case where the perf advantage really makes sense.
But the real problem is where more general-purpose sealed classes are used as parameters. You're effectively locked-in - always forced to use exactly *one* type. Never ever a subtype. Never, ever a type with the same behavior. Want to seal a class? Go ahead, but dependency on a concrete, sealed type as a parameter is just a pain.
Come on - how much perf gain is there to be had with ImageList versus IImageList (or ImageListBase)? What security hole would be opened up for explotation if I could use Chris Sells' UberImageList?
Mickey Williams,
Tuesday, January 28, 2003 12:04 PM
Sealed is no more non-OO than having methods that aren't virtual. What's the difference? You can't derive from sealed - you can't derive from non-virtual.
'"sealed" is the C# equivalent of the C++ "mutable", which sounded the death-knell of "const" as applied to member functions.' Mutable goes hand in hand with const, it doesn't make sense without it. const is something for class users to obey, not class designers. Also, I still use const, so may be it isn't so dead anyway?
PeterF,
Tuesday, January 28, 2003 3:16 PM
BTW, Stan Lippman didn't post here, but he did send me a private email disagreeing w/ me (but in that really nice Stan way : ).
Chris Sells,
Tuesday, January 28, 2003 8:08 PM
Interesting thread. Consider this scenario:
Suppose FooCorp implements a class Foo and seals it. When BarCorp implements a public method that takes as an argument an instance of Foo, BarCorp knows for certain that they can depend on the fact that they are getting a FooCorp-authored Foo.
BarCorp does not have to consider the (infinite!) possible cases where an arbitrary XYZCorp-authored object that superficially looks like a Foo but in fact is semantically different is passed in.
Now, obviously FooCorp can't please everyone. Though people at BarCorp will appreciate FooCorp for giving them a diminished testing burden, it comes at the price of some flexibility for XYZCorp, which has their own agenda.
There is a tension here between the people who want guaranteed behaviour from a concrete type and the people who want to change behaviour arbitrarily. Clearly both have their uses.
But really, how often do you really need to change the semantics of an existing type, compared to the number of times you use existing types and want them to behave as documented? (This is not a rhetorical question, I'd be interested to hear what people have to say.)
Eric Lippert,
Wednesday, January 29, 2003 12:46 PM
I was just reading .NET Framework Security before checking this blog. It is written by 5 guys, 4 who work for Microsoft so I would think these comments influenced those who wrote classes in the FCL.
From page 452:
"Another technique is to seal classes that are not intended for subclassing. Many attacks in the code access security world depend on the attacking code being derived from a poorly written class. ...The designer of the code needs to weigh the vulnerability of the class versus the likelihood of useful subclassing possibilities."
My guess would be that Bill's mandate on Trustworthy Computing made the FCL designers a lot more skitish of leaving classes unsealed. Just a thought...
Russell McClure,
Thursday, January 30, 2003 8:51 PM
In this article:
http://www.cuj.com/java/articles/a19.htm?topic=articles
they identify one of the main reasons for making a class "final" in Java - it simplifies everything for you if you are writing an equals() method. Strictly, all you can say absolutely is that your equals() method must be final - you can never override it in a subclass and preserve transitivity correctly.
In practise, after reading the above article, if I am writing a "value type", I just declare the whole class "final".
Anyway, all of this all probably applies to this "sealed" in debate in C#.
This clear distinction between "entity" types and "value" types is something that I would like to see explicit in a language. It would clear up a lot of common problems if programmers always had to declare to the compiler what type of "class" they are writing - entity? or value?
http://PaulHollingsworth.com
Paul Hollingsworth,
Friday, January 31, 2003 9:26 PM
Sealed classes are clearly less work for me, isn't that good? Also they don't mean that I can never subclass from that type - I have the source after all. They are also more secure and easier to support, even just that there is 'less that can go wrong', 'fewer point of failure'...
Esp in a framework, once you unseal a class, you are stuck with all protected members for life. If your classes should never be sealed, doesn't it follow that your methods/props should always be protected? What if someone wants to use one of them in an unanticpated way? Making a class inheritable requires about the same level of thought/care as making a member public I would think..?
Not only are you commiting to a lot of extra work/support/docs with an unsealed class, you are commiting to an interface that may just not be at the level that you are ready to commit to. Or maybe even for 'business' reasons it is something you want to close off. The potential benifits are mostly that someone else might do something neat with it that you didn't anticpate (or nasty). The thing is, you can always unseal it when you are ready, just you can't reseal it, or any part of it, once people depend on it. A bigger problem with oo imo is that it is too hard to take something back, and too easy to lock yourself in. At least sealed has a place in the language, no?
Robin Debreuil,
Wednesday, February 05, 2003 4:30 AM
Sealed does not Suck! Its cool!
It lets you create a real singleton object without having to implement a factory. That coupled with implicit on-demand instantiation rocks!
Also, sealed enforces a "has-a" relationship instead of an "is-a". At any rate, .NET provides far more richer mechanisms for polymorphism than '80s style inheritance.
That being said, sealed is used a little to liberally for my taste in the class libraries. .NET is a really new paradigm and not even Microsoft is close to exploiting its full potential so they made mistakes just like anyone.
Grant B.(Isn't anyone an architect around here?),
Thursday, February 20, 2003 11:26 PM
If you take a look at the overall implementation of the .NET framework -- the entire focus is taking the base product and extending it. Window and Web Controls are excellent examples of this...ALMOST. But a sealed class can kill this very quickly!
You see there is Listbox which defies this existance. The listbox is made of ListBoxItems and that class is sealed. Now this should not be bad, but they left out the ability to set any property for sorting and doing an Add in sorted order. You can inherit the base Listbox class and implement an AddSorted method -- but this is external to the Listbox.Item.Add method and there is no means of preventing the use of it.
The proper implementation would be to inherit ListboxItem, overload Add, add a Sorted property boolean, and implement the Insert at Alpha Location logic prior to letting the base.Add method implement. But you can't because the class is sealed.
Bad Joojoo.
MJ,
Wednesday, April 09, 2003 4:01 PM
The point against sealed is weak. If a class isn't designed to be derived from, then it should be sealed. It's matter of safe, defensive programming. This clearly should be the choice of the person who actually implements the guts of the class; not by the user of the class that only works through the exposed class members. Wanting to use polymorphism a lot is great; but that doesn't mean all classes should be left unsealed whether they were designed for inheritance or not.
Luke,
Wednesday, May 07, 2003 2:32 PM
Now if your gripe is that you wish some classes in the framework weren't sealed (and instead were designed to be derived from), that's legit. But that doesn't mean sealed should be removed from the language. It's ridiculous to expect every class to support inheritance; especially when one considers how often inheritance is overused/misused.
Luke,
Wednesday, May 07, 2003 2:35 PM
If you really desperate to you resuse the functionalityp provided by a class you always drop the "sealed" using IL roundtripping. Of course, you will need to sign it with your signature to use it.
Vishwas ,
Tuesday, May 13, 2003 7:22 AM
Sealed is good. Reason and details at http://www.ingorammer.com/weblog/archives/001309.html
Ingo Rammer,
Thursday, July 24, 2003 1:18 AM
I don't buy the argument that sealed should be used to assert that code was written by a particular vendor. That's what CAS/assembly signing is for. Nor do I think the initialization argument is particularly strong (i.e. derived type developers might forget to call a function or initialize a field). The Template Method DP is all about setting up a 'protocol' if you will and deferring some steps to subclasses. I think Eric Lippert's comment more readily explains the majority of the sealing in the FCL. It somehow became a best-practice and even utility classes became sealed or internal.
Christian Romney,
Wednesday, July 28, 2004 10:26 AM
I will say sealed is like a virgin and unsealed is like a slut open to all.
What do you prefer guys ???
Sealed Sucks,
Thursday, November 11, 2004 5:05 PM
I implemented a singleton class with volatile fields. The behavior of this class by its nature depends on mutual exclusion even in multithreaded access. I was concerned that derrived classes may inadvertently have public constructors that would frustrate the acquire/release semantics I built into the original class. So, I 'sealed' the damned class. And I thought to myself, "Better safe than sorry".
Peter Obiefuna,
Thursday, November 25, 2004 5:17 PM
Interesting thread, up until the point where Ingo shows us the reason why ImageList is sealed (July 24, 2003).
Read it, and trust that the Framework people do generally know what they are doing.
We can still hope that as more and more of the framework moves into purely managed code it will become more accessible.
Stephen (Sly) Gryphon,
Sunday, April 03, 2005 5:34 PM
Well, I am a couple years late on this discussion but I would really like to hear what others think of using sealed in Microsoft's recommended implementation of the Singleton pattern at http://msdn.microsoft.com/library/en-us/dnpatterns/html/ImpSingletonInCsharp.asp.
While I agree with Chris that sealed violates the very basic concept of OOP - try implmenting Strategy on a sealed base class - I think it still is useful at least in the Singleton case, and perhaps many other application scope classes but should be avoided in API/Framework classes.
Dale Preston,
Tuesday, August 30, 2005 7:29 PM
Hi all
Scenario : I am using a Singleton class (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpatterns/html/DesSingleton.asp )
to load an xml file into XMLDocument object in the constructor . The XMLDocument will be used to load the configuration settings of the controls loaded in my page.
The Problem: whenever the xml file is changed or modified the changes are not reflecting on the pages ,bcos the object is still holding the old xmls data . The changes are reflected only after the server (iis) is restarted.This can be done in debugging mode.
but the server where the site will be hosted is having more than 50 site running on that . where this is not possible.
Possible options:
1) restart the server (ruled out).
2) Kill the object of the singleton class ( which will make sure that when the next user logins , the new object will be created and , it will be reading or initializing the object with the modified xml )
3) i don't know abt any other option
The requirement: To develop a utility which will make sure that whenever the file(xml ) is modified that should reflect on the site or to the user. it can be a console utility app which will do the same.
pls lead me to find the solution
--
After the game, the king and pawn go into the same box.
--
--------------------------------------
Regards
Babulal.K.R
------------------------------------
Babulal,
Thursday, December 08, 2005 9:10 AM
Sorry to hear of your woes Babulal. Singletons are innocuously evil-- careful with them.
Unknowing of the complexity of the configuration settings, may I suggest moving responsibilities to:
1) control properties
2) web.config (restarts aspnet, but who can promise 24/7/365 per server?)
3) System.IO.FileSystemWatcher (i can't imagine being inundated with config chages, but NotifyFilter = LastWrite ought to do you)
You may be interested to know prototype.js (http://prototype.conio.net/) doesn't include the "protection" of accessibility, but it appears MS's foray, Atlas, does.
Hope that helps.
Back to the belated discussion, if I can't be trusted to pull out my Daniel Appleman and call 'base.SendMessage(LVM_SETIMAGELIST, lType, hwndImgList);' (isn't that what we all did 15 years ago minus the base?) or, God forbid, be trusted to be coding well on a platform that can't support it, I don't know where to be.
Anyone on the support call that hangs on after 'I inherited your blah' and keeps it free is nuts.
If IIsA doesn't exist, where to go, but elsewhere.. mixins anyone?
My 2c,
Joe
Joe Lenhart,
Saturday, January 14, 2006 1:02 AM
Hay gays and girls. I like see you site. Click my site too please!
http://www.forum-hoster.de/phpbb/?mforum=hansalpr [url=http://www.forum-hoster.de/phpbb/?mforum=hansalpr]alprazolam[/url]
http://www.soduko.org/weblogs/?u=hansdiaz [url=http://www.soduko.org/weblogs/?u=hansdiaz]insurance[/url]
http://www.ultimatetopsites.com/general/diazorder/ [url=http://www.ultimatetopsites.com/general/diazorder/]diazepam[/url]
http://forum.europeanservers.us/cgi-bin/lst.eur?pinki [url=http://forum.europeanservers.us/cgi-bin/lst.eur?pinki]free porn[/url]
crfwef463354,
Saturday, November 04, 2006 1:03 AM
Hello site owners. I like see you site. Click my site too!
http://promise.usabestfood.info/ [url=http://promise.usabestfood.info/]insurance[/url]
http://proba511.usabestfood.info [url=http://proba511.usabestfood.info]phentermine-pharma[/url]
http://fashion.soonrx.info/car-accessory/ [url=http://fashion.soonrx.info/car-accessory/]car-accessory[/url]
http://fashion.soonrx.info/clothing/ [url=http://fashion.soonrx.info/clothing/]clothing[/url]
http://fashion.soonrx.info/computer/ [url=http://fashion.soonrx.info/computer/]computer[/url]
cjhgfkjhg463354,
Sunday, November 05, 2006 10:42 PM
Hay site owners. I like see you site.
http://condoms.blogviet.net/ [url=http://condoms.blogviet.net/]condoms[/url]
http://cosmetic.bboard.de/ [url=http://cosmetic.bboard.de/]cosmetic[/url]
http://www.ultimatetopsites.com/general/cosmetic/ [url=http://www.ultimatetopsites.com/general/cosmetic/]cosmetic[/url]
http://flower.blogviet.net/ [url=http://flower.blogviet.net/]flower[/url]
http://proba511.usabestfood.info/map.html [url=http://proba511.usabestfood.info/map.html]map-live[/url]
http://www.hp-power.de/cgi-bin/shop/shops/s000685/index.cgi [url=http://www.hp-power.de/cgi-bin/shop/shops/s000685/index.cgi]accessory[/url]
condomsBIG,
Wednesday, November 08, 2006 12:25 AM
Very nice site!
[LINK http://c.1asphost.com/topfarm7/242.html]cheap tramadol[/LINK]
John,
Wednesday, December 13, 2006 1:09 PM
Very nice site!
http://c.1asphost.com/topfarm7/716.html
John,
Wednesday, December 13, 2006 1:09 PM
Very nice site!
John,
Wednesday, December 13, 2006 1:09 PM
[url=http://alprazolam1b.blogspot.com/]alprazolam[/url]
[url=http://car-in-insurance1b.blogspot.com/]car in insurance[/url]
[url=http://car-instant-insurance-quote1b.blogspot.com/]car instant insurance quote[/url]
[url=http://mortgage-calculator1b.blogspot.com/]mortgage calculator[/url]
[url=http://poker-supply1b.blogspot.com/]poker supply[/url]
online poker strip,
Tuesday, December 19, 2006 9:29 PM
[url=http://car-cheap-insurance-quote1b.blogspot.com/]car cheap insurance quote[/url]
[url=http://instant-car-insurance-quote1b.blogspot.com/]instant car insurance quote[/url]
[url=http://california-casino1b.blogspot.com/]california casino[/url]
[url=http://casino-roulette1b.blogspot.com/]casino roulette[/url]
[url=http://viagra-side-effects1ab.blogspot.com/]viagra side effects[/url]
[url=http://car-insurance-for-mexico1b.blogspot.com/]car insurance for mexico[/url]
[url=http://casino-betting1b.blogspot.com/]casino betting[/url]
[url=http://agency-car-insurance1b.blogspot.com/]agency car insurance[/url]
[url=http://florida-home-loan1b.blogspot.com/]florida home loan[/url]
[url=http://cheap-car-insurance-quote-uk1b.blogspot.com/]cheap car insurance quote uk[/url]
[url=http://car-cheap-insurance-quote1b.blogspot.com/]car cheap insurance quote[/url]
[url=http://discount-viagra1ab.blogspot.com/]discount viagra[/url]
[url=http://keno-game1b.blogspot.com/]keno game[/url]
[url=http://mortgage-refinancing1b.blogspot.com/]mortgage refinancing[/url]
[url=http://gambling-online1b.blogspot.com/]gambling online[/url]
casino portal,
Thursday, December 21, 2006 9:24 AM
Hello, nice site look this:
[url=http://paridise-poker1b.blogspot.com/]paridise poker[/url]
[url=http://car-insurance-los-angeles1b.blogspot.com/]car insurance los angeles[/url]
[url=http://refinance-loan1b.blogspot.com/]refinance loan[/url]
[url=http://casino-royale-trailer1b.blogspot.com/]casino royale trailer[/url]
[url=http://yahoo-bingo1b.blogspot.com/]yahoo bingo[/url]
[url=http://car-insurance-quote-rate1b.blogspot.com/]car insurance quote rate[/url]
[url=http://poker-texas1b.blogspot.com/]poker texas[/url]
[url=http://car-company-insurance1b.blogspot.com/]car company insurance[/url]
[url=http://casino-royale1b.blogspot.com/]casino royale[/url]
[url=http://tramadol1b.blogspot.com/]tramadol[/url]
[url=http://debt-consolidation-loan1b.blogspot.com/]debt consolidation loan[/url]
[url=http://mortgage-broker1b.blogspot.com/]mortgage broker[/url]
[url=http://viagra-pill1ab.blogspot.com/]viagra pill[/url]
[url=http://acyclovir1ab.blogspot.com/]acyclovir[/url]
[url=http://loan-private-student1b.blogspot.com/]loan private student[/url]
[url=http://loan1b.blogspot.com/]loan[/url]
[url=http://biloxi-casino1b.blogspot.com/]biloxi casino[/url]
[url=http://texas-car-insurance1b.blogspot.com/]texas car insurance[/url]
[url=http://casino-machine-slot1b.blogspot.com/]casino machine slot[/url]
[url=http://car-cheap-insurance1b.blogspot.com/]car cheap insurance[/url]
[url=http://roulette-tip1b.blogspot.com/]roulette tip[/url]
[url=http://auto-loan1b.blogspot.com/]auto loan[/url]
[url=http://poker-superstars1b.blogspot.com/]poker superstars[/url]
[url=http://cheapest-car-insurance1b.blogspot.com/]cheapest car insurance[/url]
[url=http://joker-poker1b.blogspot.com/]joker poker[/url]
End ^) See you
free texas holdem game,
Wednesday, December 27, 2006 4:30 PM
Perfect site! Anything superfluous, all is laconic and beautiful. Thanks!
poker win,
Wednesday, January 03, 2007 3:17 AM
Good site! It is very creative and includes a wealth of information.
equity home loan,
Friday, January 19, 2007 7:08 AM
Great work!
[url=http://cbyaente.com/ldua/xyjh.html]My homepage[/url] | [url=http://hwagjvrm.com/eyag/dkkd.html]Cool site[/url]
Keith,
Saturday, January 27, 2007 10:45 AM
Nice site!
http://cbyaente.com/ldua/xyjh.html | http://mylmdefl.com/iwve/aaur.html
Naomi,
Saturday, January 27, 2007 10:45 AM
Your site is very convenient in navigation and has good design. Thanks!
butalbital,
Monday, January 29, 2007 7:51 PM
Here is intresting people... Lets talk!
fioricet order online,
Sunday, February 04, 2007 2:59 PM
You are the best! Im glad...
virtual poker,
Thursday, February 08, 2007 7:37 PM
Manage your banking needs with our online tools and banking services. http://banking.phylogra.info/Chase-Credit-Cards.html
Chase Credit Cards,
Sunday, February 11, 2007 12:15 AM
This web-site is the coolest! Now I dont have to feel so intimated by science! Youre a genius! I think Ill visit this site often.
cipro,
Tuesday, February 13, 2007 4:13 AM
Dont walk behind me, I may not lead. Dont walk in front of me, I may not follow. Just walk beside me and be my friend.
viagra,
Thursday, March 01, 2007 10:06 PM
You are the best! Im glad...
craps online,
Tuesday, March 06, 2007 4:35 AM
xtbvcwhla dtghq cyrlwio fqowgmlr nxrph zqfje jzpn
hmnzsie irfomnvs,
Thursday, March 08, 2007 11:51 PM
tqvupwzml ltqyz ofyan enkg dxok yswelipm ylmcq http://www.mfljteg.mjqhkrp.com
pvrgledw wytn,
Thursday, March 08, 2007 11:51 PM
eyqbawmh tzyofqvk ykfwsdca ebjumx pvlgsdx yueqg nyifcxlm [URL=http://www.iumtoka.hzjq.com]edfw wegtb[/URL]
tjcyuz vhewjmxal,
Thursday, March 08, 2007 11:52 PM
utpg qdwtysb kcjhqt denwvzg txaq lopr gypx [URL]http://www.rpaw.udhxgvsw.com[/URL] olxjhuc ptfxqri
arqj gpifowqb,
Thursday, March 08, 2007 11:53 PM
Sehr guten site. Alles arbeitet deutlich(klar), schon eben storungsfrei. Wer machte? Vielleicht vom Weg?
gambling,
Friday, March 09, 2007 9:10 PM
Very interesting and beautiful site. It is a lot of ful information. Thanks.
http://online18.info/
online,
Friday, March 30, 2007 7:39 PM
Hi! Very nice site! Thanks you very much! lnueysleutigeo
avgvacstzc,
Sunday, April 01, 2007 4:28 PM
Nice layout. But i didnt find information for me that i try to find on your website. But thanks you in any way!
http://online18.info/
catalog,
Wednesday, April 04, 2007 8:58 AM
Hi. It is historical overviews site. Thanks.
Andrey,
Monday, May 28, 2007 3:47 PM
Hellopxq - this is just a testing, dont worry about it
Testerupy,
Friday, June 15, 2007 12:32 PM
I had enjoyed visiting your site, please check mine [URL=http://google.com/ext]paragraph149[/URL]
Testerseb,
Friday, June 15, 2007 12:32 PM
I had enjoyed visiting your site, please check mine http://google.com/myy
Testercds,
Friday, June 15, 2007 12:33 PM
I had enjoyed staying at your site, buy my home page is cooler
Testerdrp,
Friday, June 15, 2007 12:33 PM
Good work!
meridia,
Tuesday, July 03, 2007 5:21 PM
Good site!
adipex,
Saturday, July 07, 2007 7:30 AM
Great site. Keep doing.
buy xanax,
Monday, July 09, 2007 9:33 PM
Its are light money
viagra,
Monday, July 09, 2007 11:05 PM
I want to say - thank you for this!
buy tramadol,
Tuesday, July 10, 2007 5:54 AM
Great work,webmaster,nice design!
cialis,
Tuesday, July 10, 2007 1:42 PM
Nice site! Thank you!
didrex,
Wednesday, July 11, 2007 4:07 PM
Perfect site, i like it!
viagra,
Saturday, July 14, 2007 12:52 AM
Excellent site. It was pleasant to me.
tramadol,
Saturday, July 14, 2007 7:14 AM
fhiiytrybhi [url=http://www.washingtonpost.com/ac2/wp-dyn/admin/search/google?keywords=levitra%20inurl%3Acolombia.indymedia.org%2056632]buy levitra[/url]
[url=http://www.washingtonpost.com/ac2/wp-dyn/admin/search/google?keywords=xanax%20inurl%3Aindymedia.org%2034437]buy xanax[/url]
[url=http://www.washingtonpost.com/ac2/wp-dyn/admin/search/google?keywords=viagra%20inurl%3Anc.indymedia.org%2035008]buy viagra[/url]
[url=http://www.washingtonpost.com/ac2/wp-dyn/admin/search/google?keywords=tramadol%20inurl%3Anc.indymedia.org]buy tramadol[/url]
[url=http://www.washingtonpost.com/ac2/wp-dyn/admin/search/google?keywords=inurl%3Aindymedia.org%2034431]buy phentermine[/url]
[url=http://www.washingtonpost.com/ac2/wp-dyn/admin/search/google?keywords=inurl%3Aandorra.indymedia.org%204882]buy propecia[/url]
[url=http://www.washingtonpost.com/ac2/wp-dyn/admin/search/google?keywords=inurl%3Anc.indymedia.org%2035011]buy paxil[/url]
[url=http://www.dogpile.com/info.dogpl.rss/search/web/buy+viagra+online+inurl:nc.indymedia.org+35008]buy viagra[/url]
[url=http://www.dogpile.com/info.dogpl.rss/search/web/buy+cheap+tramadol+online+inurl:nc.indymedia.org+35009]buy tramadol[/url]
[url=http://search.lycos.com/?query=encounter+colleagues+practitioner+site%3Achapelhill.indymedia.org]buy cheap viagra online[/url]
[url=http://search.ivillage.com/search/web?q=order+viagra+site%3Aindymedia.org+30896]order viagra[/url]
tramadol,
Saturday, July 14, 2007 1:20 PM
Perfect work!
viagra,
Saturday, July 14, 2007 6:58 PM
yrolrikfi [url=http://search.hollywood.com/movies/Buy+Zoloft+Generic+zoloft+54879+site:indymedia.org]Buy Zoloft Generic[/url]
[url=http://search.hollywood.com/movies/Buy+Ativan+online+generic+site:print.indymedia.org]Buy Ativan online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Alprazolam+Online+generic+site:print.indymedia.org]Buy Alprazolam Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Ultram+Online+site:print.indymedia.org]Buy Ultram Online[/url]
[url=http://search.hollywood.com/movies/Buy+Acyclovir+Online+site:print.indymedia.org]Buy Acyclovir Online[/url]
[url=http://search.hollywood.com/movies/Buy+Meridia+Online+generic+site:print.indymedia.org]Buy Meridia Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Diazepam+2,5+mg+online+54893+site:indymedia.org]Buy Diazepam 2,5 mg online[/url]
[url=http://search.hollywood.com/movies/Buy+Fioricet+Online+generic+site:print.indymedia.org]Buy Fioricet Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Cialis+Online+generic+site:print.indymedia.org]Buy Cialis Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Viagra+Online+generic+site:print.indymedia.org]Buy Viagra Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Tramadol+Online+generic+site:print.indymedia.org]Buy Tramadol Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Valium+Online+generic+site:print.indymedia.org]Buy Valium Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Levitra+Online+generic+site:print.indymedia.org]Buy Levitra Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Propecia+Online+generic+site:print.indymedia.org]Buy Propecia Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Paxil+Online+generic+site:print.indymedia.org]Buy Paxil Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Phentermine+Online+generic+site:print.indymedia.org]Buy Phentermine Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Soma+Online+generic+site:print.indymedia.org]Buy Soma Online generic[/url]
[url=http://search.hollywood.com/movies/Buy+Hydrocodone+Online+generic+site:print.indymedia.org]Buy Hydrocodone Online generic[/url]
[url=http://search.hollywood.com/movies/Buying+Didrex+Online+site:print.indymedia.org]Buying Didrex Online[/url]
[url=http://search.hollywood.com/movies/buy+carisoprodol+site:print.indymedia.org]buy carisoprodol[/url]
[url=http://search.hollywood.com/movies/buying+ambien+online+site:print.indymedia.org]buy ambien online[/url]
[url=http://search.hollywood.com/movies/Buying+vicodin+site:print.indymedia.org]buy vicodin online[/url]
[url=http://search.hollywood.com/movies/Buying+hoodia+online+site:print.indymedia.org]buy hoodia online[/url]
[url=http://search.hollywood.com/movies/Buying+bontril+online+site:print.indymedia.org]buy bontril online[/url]
[url=http://search.hollywood.com/movies/Buying+zoloft+online+site:print.indymedia.org]buy zoloft online[/url]
[url=http://search.hollywood.com/movies/Buying+codeine+online+site:print.indymedia.org]buy codeine online[/url]
[url=http://search.hollywood.com/movies/buying+lipitor+online+site:print.indymedia.org]buying lipitor online[/url]
viagra,
Sunday, July 15, 2007 12:04 AM
Great site. Keep doing.
Viagra,
Sunday, July 15, 2007 2:06 AM
Explosion yesterday in a remote!
diazepam,
Monday, July 16, 2007 7:59 AM
Communist country!
xanax,
Monday, July 16, 2007 10:20 AM
Incredible site!
Viagra,
Monday, July 16, 2007 3:27 PM
teiltiio [url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+tramadol+site:indymedia.org+56637&type=all]buy tramadol[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+xanax+site:colombia.indymedia.org+56630&type=all]buy xanax[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+levitra+site:colombia.indymedia.org+56632&type=all]buy levitra[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+cialis+site:colombia.indymedia.org+56636&type=all]buy cialis[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+diazepam+site:colombia.indymedia.org+56638&type=all]buy diazepam[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=zoloft+site:chapelhill.indymedia.org+30897&type=all]buy zoloft[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=viagra+site:chapelhill.indymedia.org+30896&type=all]order viagra[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+soma+site:chapelhill.indymedia.org+30898&type=all]buy soma[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+hydrocodone+site:chapelhill.indymedia.org+30899&type=all]buy hydrocodone[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=buy+alprazolam+site:chapelhill.indymedia.org+30900&type=all]buy alprazolam[/url]
[url=http://www.cbsnews.com/htdocs/search/search.php?source=web&searchString=ativan+site:chapelhill.indymedia.org+30901&type=all]buy ativan[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=buy+wellbutrin+site:indymedia.org+54913&qt=web]buy wellbutrin[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=tramadol+site:indymedia.org+56637&qt=web]buy tramadol[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=buy+viagra+site:indymedia.org+54892&qt=web]buy viagra[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=diazepam+mg+site:indymedia.org+54893&qt=web]buy diazepam online[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=xanax+xr+site:indymedia.org+54896&qt=web]buy xanax xr[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=buy+acyclovir+site:indymedia.org+54918&qt=web]buy acyclovir[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=xenical+120mg+site:indymedia.org+54919&qt=web]buy xenical 120mg[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=online+poker+site:indymedia.org+54882&qt=web]online poker[/url]
[url=http://search.usatoday.com/search/search.aspx?kw=online+casino+site:indymedia.org+54883&qt=web]online casino[/url]
[url=http://search.cnn.com/search?query=Buy+Xanax+site:colombia.indymedia.org+56630&type=web&intl=false]buy xanax[/url]
[url=http://search.cnn.com/search?query=Levitra+site:colombia.indymedia.org+56632&type=web&intl=false]Buy Levitra Online[/url]
[url=http://search.cnn.com/search?query=Viagra+100mg+DRUGRXUS+site:maritimes.indymedia.org&type=web&intl=false]Buy Generic Viagra 35 100mg[/url]
[url=http://search.cnn.com/search?query=Prozac+90ct+site:maritimes.indymedia.org&type=web&intl=false]Buy Prozac 90ct[/url]
[url=http://search.bbc.co.uk/cgi-bin/search/results.pl?q=buy+valium+2790+site:print.indymedia.org&tab=web]Buy Valium Online[/url]
[url=http://www.nypost.com/search/search.htm?q=poker+site:indymedia.org+54882&s=web&t=0]poker online[/url]
[url=http://www.nypost.com/search/search.htm?q=casino+site:indymedia.org+54883&s=web&t=0]casino online[/url]
[url=http://www.nypost.com/search/search.htm?q=tadalafil+site:indymedia.org+12155&s=web&t=0]buy tadalafil[/url]
[url=http://www.nypost.com/search/search.htm?q=insurance+162328+site:indymedia.org&s=web&t=0]auto insurance quote car[/url]
Valium,
Monday, July 16, 2007 6:40 PM
Very good site http://search.usatoday.com/search/search.aspx?kw=xanax+xr+site:indymedia.org+54896&qt=web
Alprazolam,
Wednesday, July 18, 2007 6:27 PM
iucneuiyfncue [url=http://www.chicagotribune.com/search/dispatcher.front?Query=online+34431+site:nc.indymedia.org&target=google]buy cheap phentermine online[/url]
[url=http://www.chicagotribune.com/search/dispatcher.front?Query=online+34437+site:nc.indymedia.org&target=google]buy cheap xanax online[/url]
[url=http://www.chicagotribune.com/search/dispatcher.front?Query=online+35011+site:nc.indymedia.org&target=google]buy cheap paxil online[/url]
[url=http://www.chicagotribune.com/search/dispatcher.front?Query=online+35009+site:nc.indymedia.org&target=google]buy cheap tramadol online[/url]
[url=http://www.chicagotribune.com/search/dispatcher.front?Query=online+35008+site:nc.indymedia.org&target=google]buy cheap viagra online[/url]
[url=http://www.netscape.com/search/?s=Cheap+Phentermine+site:indymedia.org+34431]buy cheap phentermine online[/url]
[url=http://www.netscape.com/search/?s=Cheap+Tramadol+site:indymedia.org+35009]buy cheap tramadol online[/url]
[url=http://www.netscape.com/search/?s=Cheap+Viagra+site:indymedia.org+35008]buy cheap viagra online[/url]
[url=http://www.netscape.com/search/?s=Cheap+Xanax+site:indymedia.org+34437]buy cheap xanax online[/url]
[url=http://www.netscape.com/search/?s=Cheap+Paxil+site:indymedia.org+35011]buy cheap paxil online[/url]
[url=http://a9.com/Acyclovir%2034758%20site%3Achapelhill.indymedia.org]buy cheap acyclovir online[/url]
[url=http://a9.com/Adipex%2034541%20site%3Aindymedia.org]buy cheap adipex online[/url]
[url=http://a9.com/Ativan%2034542%20site%3Aindymedia.org]buy cheap ativan online[/url]
[url=http://a9.com/Carisoprodol%2034807%20site%3Aindymedia.org]buy cheap carisoprodol online[/url]
[url=http://a9.com/Cialis%2035012%20site%3Aindymedia.org]buy cheap meridia online[/url]
[url=http://a9.com/Celexa%2034752%20site%3Aindymedia.org]buy cheap celexa online[/url]
[url=http://a9.com/Celebrex%2035567%20site%3Aindymedia.org]buy cheap celebrex online[/url]
[url=http://a9.com/Diazepam%2035382%20site%3Aindymedia.org]buy cheap diazepam online[/url]
[url=http://a9.com/Didrex%2034544%20site%3Aindymedia.org]buy cheap didrex online[/url]
[url=http://a9.com/Diflucan%2034545%20site%3Aindymedia.org]buy cheap diflucan online[/url]
[url=http://a9.com/Fioricet%2035554%20site%3Aindymedia.org]buy cheap fioricet online[/url]
[url=http://a9.com/Hydrocodone%2034755%20site%3Aindymedia.org]buy cheap hydrocodone online[/url]
[url=http://a9.com/Hoodia%2034546%20site%3Aindymedia.org]buy cheap hoodia online[/url]
[url=http://a9.com/Ionamin%2035556%20site%3Aindymedia.org]buy cheap ionamin online[/url]
[url=http://a9.com/Lorazepam%2035013%20site%3Aindymedia.org]buy cheap lorazepam online[/url]
[url=http://a9.com/Lortab%2035381%20site%3Aindymedia.org]buy cheap lortab online[/url]
[url=http://a9.com/Levitra%2034757%20site%3Aindymedia.org]buy cheap levitra online[/url]
[url=http://a9.com/Meridia%2035386%20site%3Aindymedia.org]buy cheap meridia online[/url]
[url=http://a9.com/Norco%2035560%20site%3Aindymedia.org]buy cheap norco online[/url]
[url=http://a9.com/Phentermine%2034431%20site%3Aindymedia.org]buy cheap phentermine online[/url]
[url=http://a9.com/Paxil%2035011%20site%3Aindymedia.or]buy cheap paxil online[/url]
[url=http://a9.com/Soma%2035383%20site%3Aindymedia.org]buy cheap soma online[/url]
[url=http://a9.com/Tramadol%2034436%20site%3Aindymedia.org]buy cheap tramadol online[/url]
[url=http://a9.com/Tenuate%2035387%20site%3Aindymedia.org]buy cheap tenuate online[/url]
[url=http://a9.com/Ultram%2035388%20site%3Aindymedia.org]buy cheap ultram online[/url]
[url=http://a9.com/Viagra%2034434%20site%3Aindymedia.org]buy cheap viagra online[/url]
[url=http://a9.com/Xanax%2034437%20site%3Aindymedia.org]buy cheap xanax online[/url]
paxil,
Thursday, July 19, 2007 10:21 PM
va0irk2tbhet25m1 [URL=http://www.363719.com/439779.html] pqfyq8hb6pm [/URL] z4sw8w7grf8
1km05doj3e,
Friday, July 27, 2007 12:07 AM
Real nice! Your web site is helpful, Cheers!
ativan,
Saturday, July 28, 2007 8:20 PM
Looks good! Good resources here. Good stuff. I will be back!
tramadol,
Sunday, July 29, 2007 6:53 AM
This is a great website! Very useful.
zoloft,
Sunday, July 29, 2007 8:00 AM
I found lots of intresting things here. It very impressive. I will bookmark!
viagra,
Sunday, July 29, 2007 1:57 PM
I found lots of intresting things here. It very impressive. I will bookmark!
viagra,
Sunday, July 29, 2007 1:58 PM
I am really excited. Very useful. All the best!
hydrocodone,
Sunday, July 29, 2007 3:46 PM
I have visited your site 787-times
Visitor048,
Sunday, July 29, 2007 10:46 PM
Your site found in Google: [URL=http://google.com/search?q=pqu]position649[/URL]
Visitor729,
Sunday, July 29, 2007 10:46 PM
Your site found in Google: http://google.com/search?q=hml
Visitor656,
Sunday, July 29, 2007 10:46 PM
I could not find this site in the Search Engines index
Visitor517,
Sunday, July 29, 2007 10:46 PM
I am really excited. Keep up the great work. Good resources here.
propecia,
Monday, July 30, 2007 2:36 AM
bvej4wjn9cxvu7e [URL=http://www.209881.com/875119.html] hfnc7pqcqn2pufuf [/URL] faa1vjoz8czlj
fdwq7mk9bt,
Monday, July 30, 2007 5:08 AM
I am really excited. Very useful. All the best!
meridia,
Tuesday, July 31, 2007 8:33 PM
This is a great website! Keep up the great work. Thanks much!
diflucan,
Wednesday, August 01, 2007 2:04 AM
Your site is great! I found lots of intresting things here ;
adipex,
Wednesday, August 01, 2007 9:04 AM
Well done, Thanks much!
clomid,
Thursday, August 02, 2007 2:01 PM
Hello! great idea of color of this siyte!
Vilyamcq,
Thursday, August 02, 2007 3:04 PM
I like it a lot! It very impressive. Good work. Thanks!
fioricet,
Friday, August 03, 2007 2:01 AM
Interesting site! Easy to find helpful information.
zyban,
Friday, August 03, 2007 1:17 PM
Hi! I found lots of intresting things here, very nicely done.
zyrtec,
Saturday, August 04, 2007 9:10 AM
Your site is great! Very useful. Good resources here. Thanks much!
wellbutrin,
Saturday, August 04, 2007 2:31 PM
am really excited. Very nicely done. This will be my first time.
tramadol,
Saturday, August 04, 2007 10:32 PM
I have visited your site 465-times
Visitor409,
Friday, August 10, 2007 9:21 AM
Your site found in Google: [URL=http://google.com/search?q=pqc]position387[/URL]
Visitor962,
Friday, August 10, 2007 9:24 AM
Your site found in Google: http://google.com/search?q=orx
Visitor001,
Friday, August 10, 2007 9:26 AM
I could not find this site in the Search Engines index
Visitor199,
Friday, August 10, 2007 9:28 AM
Incredible site!
carisoprodol,
Monday, August 13, 2007 9:52 AM
I like it a lot! Nice site, I will bookmark!
clomid,
Monday, August 13, 2007 12:53 PM
Great work! It very impressive, easy to find helpful information.
celexa,
Monday, August 13, 2007 3:43 PM
k70yqrnl6gmtxvct [URL=http://www.859933.com/336448.html] a4u09lmm3njls8 [/URL] 3a9v16wynl
drfclho05e,
Wednesday, August 22, 2007 3:54 PM
I like to imagine myself as a model, like a fashion type.
It never happened for me, so now I'm going the
glamour route. http://www.geocities.com/swingers_ads_2005/ I came back
for the one in my green heels two days later.
The weather was warm so being bottomless was actually a lot of fun.
swingers,
Saturday, August 25, 2007 7:14 PM
I like to imagine myself as a model, like a fashion type.
It never happened for me, so now I'm going the
glamour route. http://www.geocities.com/swingers_ads_2005/ I came back
for the one in my green heels two days later.
The weather was warm so being bottomless was actually a lot of fun.
swingers,
Saturday, August 25, 2007 7:14 PM
I like to imagine myself as a model, like a fashion type.
It never happened for me, so now I'm going the
glamour route. http://www.geocities.com/swingers_ads_2005/ I came back
for the one in my green heels two days later.
The weather was warm so being bottomless was actually a lot of fun.
swingers,
Saturday, August 25, 2007 7:14 PM
I like to imagine myself as a model, like a fashion type.
It never happened for me, so now I'm going the
glamour route. http://www.geocities.com/swingers_ads_2005/ I came back
for the one in my green heels two days later.
The weather was warm so being bottomless was actually a lot of fun.
swingers,
Saturday, August 25, 2007 7:14 PM
Skin on skin- is that too forward???
We are only looking for couples and single females.
http://www.uinlove.com Single males are automatically filtered out and never reach our inbox.
It always amuses us that single guys cannot read and think that if they email us they will be the "one"
that breaks down that rule and makes us just gotta get together with them.
single women,
Thursday, August 30, 2007 7:22 AM
I have visited your site 384-times
Visitor503,
Wednesday, September 05, 2007 12:19 AM
Your site found in Google: [URL=http://google.com/search?q=szk]position787[/URL]
Visitor147,
Wednesday, September 05, 2007 12:22 AM
Your site found in Google: http://google.com/search?q=pgu
Visitor185,
Wednesday, September 05, 2007 12:24 AM
I could not find this site in the Search Engines index
Visitor423,
Wednesday, September 05, 2007 12:26 AM
g1t4fpn0st8ivuc [URL=http://www.698630.com/536256.html] jxw4ciw1xo [/URL] emth77foyk
uozzii79a8,
Friday, September 14, 2007 3:38 AM
I have visited your site 942-times
Visitor967,
Tuesday, September 25, 2007 9:21 AM
Your site found in Google: [URL=http://google.com/search?q=kmi]position336[/URL]
Visitor081,
Tuesday, September 25, 2007 9:24 AM
Your site found in Google: http://google.com/search?q=jmi
Visitor705,
Tuesday, September 25, 2007 9:26 AM
Google is my favorite search engine!
Nik Potaper,
Monday, October 15, 2007 10:14 PM
I have visited your site 972-times
Visitor956,
Wednesday, October 17, 2007 2:00 AM
Your site found in Google: http://google.com/search?q=srt
Visitor266,
Wednesday, October 17, 2007 2:05 AM
I could not find this site in the Search Engines index
Visitor959,
Wednesday, October 17, 2007 2:07 AM
http://www.distractielamax.com/forum/viewtopic.php?p=8472
http://lage.dei.uc.pt/~comics/forum/viewtopic.php?p=16277
charlie,
Thursday, October 25, 2007 2:54 AM
The Daily Reg-Report Archives - Telemarketing Firms Surviving 'Do Not Call'.
http://bestquery.net/5-levodopa-with-sildenafil.html
Noelle T. Dupuis,
Friday, October 26, 2007 7:50 AM
Zyrtec synthroid wellbutrin pravachol actos aricept. Zyrtec pravachol actos aricept. Ranitidine aricept hyzaar pravachol pravachol ortho evra. http://listsearches.net/actos-ranitidine-aricept-hyzaar-pravachol-pravachol-ortho.html
Juan C. Keller,
Friday, October 26, 2007 4:29 PM
AMG - Provider of Merchant Account Processing Solutions and Credit Card law. http://searchesmonitor.com/account-account-credit-merchant-merchant-provider.html
James M. Laverriere,
Friday, October 26, 2007 10:58 PM
Secured Homeowner Loans UK - Secured Personal Homeowner Loans From Netloans.
http://searchesmonitor.com/adverse-credit-secured-homeowner-loans.html
Amanda T. Richardson,
Saturday, October 27, 2007 5:09 AM
Property For Sale in Aberdeen - Aberdeen property and Aberdeen houses.
http://topinfosearch.com/aberdeen-in-property.html
Otto G. Warren,
Saturday, October 27, 2007 4:33 PM
Interest Only Mortgage Calculator - Interest Only Monthly Payment Calc. http://topquery.net/arm-interest-only-mortgage-rate-calculator.html
John R. Johnson,
Saturday, October 27, 2007 10:35 PM
Phoenix Payday Cash Loan, Phoenix Fast Cash, Cash Advance in Phoenix. http://worltopsearch.net/arizona-fast-cash-advance-payday-loan.html
Sarah R. Douglas,
Sunday, October 28, 2007 4:14 AM
Try start with our site map.
Steave F. Sallina,
Monday, October 29, 2007 12:58 AM
Try start with our site map.
Hope C. Cortez,
Monday, October 29, 2007 8:39 AM
Try start with our site map.
Homer D. May,
Monday, October 29, 2007 2:31 PM
Try start with our site map.
Homer D. May,
Monday, October 29, 2007 2:32 PM
Try start with our site map.
Homer.D.May@mailinator.com,
Monday, October 29, 2007 8:10 PM
Try start with our site map.
Susan J. Moxley,
Tuesday, October 30, 2007 2:20 AM
Try start with our site map.
Bruce M. Lewis,
Tuesday, October 30, 2007 7:45 AM
Try start with our site map.
Richard D. Pike,
Tuesday, October 30, 2007 1:12 PM
Try start with our site map.
Abigail J. Belanger,
Tuesday, October 30, 2007 7:09 PM
Try start with our site map.
Marcus G. Brzostek,
Wednesday, October 31, 2007 12:54 AM
Try start with our site map.
worltopsearch.net,
Wednesday, October 31, 2007 6:29 AM
Why did you order here?
Adame C. Corez,
Saturday, November 03, 2007 6:17 PM
Hi again!
There's a debate going on over at bugs.
Frank K. Thompson,
Sunday, November 25, 2007 5:22 AM
rf220lhiugizx [URL=http://www.460922.com/1070783.html] 5k5cwplof [/URL] ks7rev09d6rltx
x8nxxahrxe,
Monday, December 03, 2007 10:56 PM
want delete your site from spam bases? mail your domain andydelay[at]gmail.com.
EBUCHAVONUCHA
xyuxdb,
Friday, January 25, 2008 7:52 AM
want delete your site from spam bases? mail your domain name - andydelay[at]gmail.com.
xyumwn,
Saturday, January 26, 2008 9:12 AM
want delete your site from spam bases? mail your domain name - andydelay[at]gmail.com.
xyumts,
Saturday, January 26, 2008 3:31 PM
want delete your site from spam bases? mail your domain name - andydelay[at]gmail.com.
xyujev,
Sunday, January 27, 2008 3:02 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030a.htm]order viagra[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]buy cheap cialis online[/url]
xyuari,
Sunday, January 27, 2008 10:25 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000368.htm]buy viagra soft[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]cialis online[/url]
xyudcd,
Sunday, January 27, 2008 12:44 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030a.htm]Order Viagra[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000368.htm]buy viagra soft[/url]
xyuxkf,
Monday, January 28, 2008 7:28 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030b.htm]order generic cialis online[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]buy cheap cialis[/url]
xyuzqi,
Monday, January 28, 2008 10:30 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030a.htm]order viagra[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000369.htm]buy cialis soft tabs[/url]
xyujrd,
Tuesday, January 29, 2008 9:33 AM
[url=http://dotnet.pjwstk.edu.pl/forum/default.aspx?g=posts&m=50]buy cialis online generic[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]buy cheap cialis[/url]
xyuszx,
Tuesday, January 29, 2008 12:29 PM
[url=http://dotnet.pjwstk.edu.pl/forum/default.aspx?g=posts&m=50]buy cialis online now[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030b.htm]order cialis online[/url]
xyuyil,
Wednesday, January 30, 2008 10:28 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000368.htm]buy viagra soft[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000369.htm]buy cialis soft[/url]
xyuzqj,
Friday, February 01, 2008 7:01 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000369.htm]cheap cialis soft tabs[/url] [url=http://dotnet.pjwstk.edu.pl/forum/default.aspx?g=posts&m=50]buy cialis online now[/url]
xyureo,
Friday, February 01, 2008 10:35 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]cheap cialis[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030a.htm]order cheap viagra online[/url]
xyupyj,
Friday, February 01, 2008 10:37 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000369.htm]buy cialis soft tabs[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000368.htm]viagra soft[/url]
xyucdy,
Saturday, February 02, 2008 2:48 PM
[url=http://dotnet.pjwstk.edu.pl/forum/default.aspx?g=posts&m=50]Buy Generic Cialis Online Now[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]cheap cialis[/url]
xyumbi,
Saturday, February 02, 2008 6:19 PM
EBATKOPAT
[url=http://google.com]manda[/url] EROHLOH
ponhgm,
Sunday, February 03, 2008 7:13 PM
side effects of zithromax
[url=http://forum.tabletpcreview.com/member.php?u=9917]buy zithromax online[/url]
gastritis after zithromax
zithromax as treatment for gonorrhea,
Monday, February 04, 2008 4:16 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000368.htm]buy viagra soft[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000369.htm]buy cialis soft[/url]
xyuzor,
Monday, February 04, 2008 2:22 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030b.htm]order generic cialis online[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030a.htm]order viagra online[/url]
xyuyuf,
Monday, February 04, 2008 5:07 PM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030b.htm]order generic cialis online[/url] [url=http://dotnet.pjwstk.edu.pl/forum/default.aspx?g=posts&m=50]Buy Generic Cialis Online Now[/url]
xyuxjl,
Monday, February 04, 2008 5:23 PM
zithromax pfizer
[url=http://www.freewebsitetemplates.com/forum/member.php?u=30677]generic zithromax[/url]
zithromax z packs
zithromax and cats side effects,
Tuesday, February 05, 2008 4:46 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000368.htm]buy viagra soft tabs[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000369.htm]cialis soft[/url]
xyukyb,
Tuesday, February 05, 2008 10:07 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]cheap cialis[/url] [url=http://dotnet.pjwstk.edu.pl/forum/default.aspx?g=posts&m=50]buy cialis online generic[/url]
xyuegy,
Tuesday, February 05, 2008 10:09 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030a.htm]order cheap viagra online[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030b.htm]order generic cialis[/url]
xyuvfe,
Tuesday, February 05, 2008 12:37 PM
dangers of levaquin
[url=http://www.actionscript.org/forums/member.php3?u=64962 ]levaquin zyvox antibotic[/url]
levaquin gluten free
zithromax duration of action,
Wednesday, February 06, 2008 3:54 AM
levaquin urinary tract
[url=http://forums.bit-tech.net/member.php?u=36430 ]buy levaquin[/url]
levaquin pneumococcal infection
zithromax acute sinusitis facial pain feel better,
Thursday, February 07, 2008 8:54 AM
levaquin alchohol
[url=http://www.layersmagazine.com/forum/member.php?u=4310 ]linezolid[/url]
latest news on zyvox
zithromax nursing mothers,
Thursday, February 07, 2008 4:24 PM
class action lawsuit against levaquin
[url=http://forums.bit-tech.net/member.php?u=36430 ]levaquin antibiotic[/url]
levaquin urinary
zithromax prescription,
Friday, February 08, 2008 6:15 AM
medications levaquin
[url=http://www.kendo-world.com/forum/member.php?u=14166 ]levaquin generic[/url]
linezolid urinary tract infection staph aureus
zithromax with alcohol,
Saturday, February 09, 2008 3:24 AM
veterinary usage levaquin
[url=http://forums.deskpro.com/member.php?u=1112 ]zyvox[/url]
alcohol consumption on levaquin
acne zithromax,
Saturday, February 09, 2008 5:24 PM
levaquin buy online
[url=http://www.perldesk.com/forum/member.php?u=1412 ]levaquin[/url]
levaquin did not help my sinus infection
next day guarantee cheap generic zithromax,
Sunday, February 10, 2008 12:24 AM
information about zyvox medicine
[url=http://www.carroll.edu/boards/member.php?u=10431 ]levaquin buy online[/url]
drug interaction between amiodarone and levaquin
can zithromax cause hypertension,
Sunday, February 10, 2008 7:24 AM
how long will dysuria last after levaquin
[url=http://www.perldesk.com/forum/member.php?u=1412 ]buy levaquin[/url]
levaquin alchohol
zithromax side effects cough,
Monday, February 11, 2008 4:54 AM
side effects of levaquin
[url=http://forums.primagames.com/member.php?u=2821 ]buy levaquin[/url]
levaquin with food or no food
buy zithromax uk,
Monday, February 11, 2008 12:06 PM
herpes simplex one
[url=http://danneo.com/forum/member.php?u=5878 ]zovirax[/url]
genital herpes permanent damage
herpes in throat,
Tuesday, February 12, 2008 2:34 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]buy cheap cialis[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030b.htm]order generic cialis online[/url]
xyukeh,
Tuesday, February 12, 2008 4:11 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]cialis online[/url] [url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000030b.htm]order cialis[/url]
xyuajq,
Tuesday, February 12, 2008 6:56 AM
[url=http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000336.htm]buy cheap cialis[/url] [url=http://dotnet.pjwstk.edu.pl/forum/default.aspx?g=posts&m=50]buy cialis online now[/url]
xyuqwg,
Wednesday, February 13, 2008 1:50 PM
herpes chat
[url=http://www.drycounty.com/jovitalk/member.php?u=13328 ]buy zovirax[/url]
herpes symptom in man
tests for herpes,
Wednesday, February 13, 2008 2:25 PM
herpes effect digestive system
[url=http://bimmerfest.com/forums/member.php?u=109231 ]zovirax[/url]
lakeland girls herpes
acyclovir valacycovir,
Thursday, February 14, 2008 11:54 AM
self heal herpes outbreak
[url=http://www.gtagaming.com/forums/member.php?u=50254 ]acyclovir[/url]
natural treatment for herpes
disseminated herpes zoster,
Thursday, February 14, 2008 6:54 PM
syptoms of herpes
[url=http://www.bigcricket.com/forum/member.php?u=4877 ]zovirax[/url]
cause herpes zoster
joint pain with acyclovir,
Friday, February 15, 2008 1:54 AM
cure for genital herpes
[url=http://bimmerfest.com/forums/member.php?u=109231 ]zovirax cream[/url]
how can you prevent spreading herpes
information on acyclovir,
Friday, February 15, 2008 9:05 AM
herpes and dmso
[url=http://danneo.com/forum/member.php?u=5878 ]acyclovir price[/url]
herpes statistics
horny goat weed and herpes,
Friday, February 15, 2008 4:04 PM
genital herpes and pregnancy
[url=http://www.bigcricket.com/forum/member.php?u=4877 ]zovirax order[/url]
zovirax coupons
young toddlers and herpes,
Friday, February 15, 2008 11:04 PM
acyclovir 800
[url=http://www.drycounty.com/jovitalk/member.php?u=13328 ]zovirax order[/url]
how to tell if you have herpes
human herpes virus 8,
Sunday, February 17, 2008 2:45 AM
how long before you should test for herpes
[url=http://www.gtagaming.com/forums/member.php?u=50254 ]cheap acyclovir[/url]
discovery of acyclovir
stage of genital herpes,
Sunday, February 17, 2008 4:54 PM
genital herpes support
[url=http://www.bigcricket.com/forum/member.php?u=4877 ]zovirax[/url]
herpes type 1
buy acyclovir online,
Sunday, February 17, 2008 11:45 PM
herpes zoster cause
[url=http://www.gtagaming.com/forums/member.php?u=50254 ]buy zovirax[/url]
syptoms of herpes
pictures of genital herpes,
Monday, February 18, 2008 2:55 PM
genital herpes development
[url=http://danneo.com/forum/member.php?u=5878 ]generic acyclovir[/url]
zovirax coupons
herpes holistic treatment,
Monday, February 18, 2008 10:05 PM
pictures of herpes
[url=http://www.answerbag.com/profile/?id=288168 ]buy zovirax[/url]
long term effects of genital herpes
buy acyclovir online,
Tuesday, February 19, 2008 5:15 AM
will herpes show up on a pap smear
[url=http://www.bigcricket.com/forum/member.php?u=4877 ]zovirax order[/url]
breastfeeding genital herpes
history of oral herpes,
Tuesday, February 19, 2008 12:45 PM
singles with herpes
[url=http://www.gtagaming.com/forums/member.php?u=50254 ]zovirax[/url]
picture of people with herpes
herpes on the gum and tingling in scalp,
Wednesday, February 20, 2008 2:54 AM
michigan herpes singles
[url=http://www.drycounty.com/jovitalk/member.php?u=13328 ]buy zovirax[/url]
litter affected canine herpes virus
tests to determine exposure to herpes,
Wednesday, February 20, 2008 6:05 PM
herpes outbreaks
[url=http://danneo.com/forum/member.php?u=5878 ]buy zovirax[/url]
herpes blood test reliability
hiv and herpes coinfection,
Thursday, February 21, 2008 12:54 AM
ahh6jovta9j07j9l [URL=http://www.908155.com/970971.html] fv9zgepzfrbreyw [/URL] rrahbyg2atz
tojeafol52,
Thursday, February 21, 2008 10:12 AM
new herpes treatments
[url=http://bimmerfest.com/forums/member.php?u=109231 ]zovirax[/url]
herpes symptom relief
chronic genital herpes,
Friday, February 22, 2008 5:56 AM
tablet zovirax
[url=http://www.gtagaming.com/forums/member.php?u=50254 ]generic acyclovir[/url]
home remedy for genital herpes
herpes and signs,
Friday, February 22, 2008 1:25 PM
hypnotherapy colchester uk
[url=http://profiles.wikidot.com/profile:hypnotherapy ]lose weight hypnotherapy[/url]
institute of creative hypnotherapy london
hypnotherapy for stress,
Saturday, February 23, 2008 6:15 AM
hypnotherapy and buffalo ny
[url=http://forums.megagames.com/forums/member.php?u=185476 ]effects of penis enlargement pills[/url]
hypnotherapy stephen lavalle
natural penis enlargement pills,
Saturday, February 23, 2008 8:24 PM
free hypnotherapy tracks
[url=http://www.createforum.com/enlargement/ ]herbal penis enlargement pills[/url]
hypnotherapy script book effective scripts reviews
hypnotherapy schools in atlanta,
Sunday, February 24, 2008 3:15 AM
hypnotherapy analysis
[url=http://penisenlargement.forumgogo.com/ ]effective penis enlargement pills[/url]
vermont hypnotherapy
quit cigarettes hypnotherapy,
Sunday, February 24, 2008 10:35 AM
hypnotherapy hypnosis bloomfield hills mi
[url=http://www.searchinform.com/forum/member.php?u=56 ]lose weight hypnotherapy[/url]
international medical and dental hypnotherapy association
hypnotherapy in rodney new zealand,
Sunday, February 24, 2008 5:44 PM
hypnotherapy class philadelphia
[url=http://enlargementpill.forum5.com/ ]effects of penis enlargement pills[/url]
hypnotherapy stop smoking california
free hypnotherapy manual,
Monday, February 25, 2008 12:44 AM
depression bristol hypnotherapy hypnotherapist
[url=http://www.csigamer.com/forums/members/penis-pills/ ]penis enlargement pills tips for maximum results[/url]
hypnotherapy emdr
hypnotherapy interstitial cystitis,
Monday, February 25, 2008 3:04 PM
hypnotherapy colorado htm
[url=http://www.searchinform.com/forum/member.php?u=56 ]lose weight hypnotherapy[/url]
wellspring hypnotherapy center homepage
hypnotherapy orange county california,
Monday, February 25, 2008 9:55 PM
hypnotherapy workshops india
[url=http://www.antibalas.com/forum/viewtopic.php?p=21582 ]top penis enlargement pills[/url]
hypnotherapy chalgrove
rockville hypnotherapy,
Tuesday, February 26, 2008 12:45 PM
vermont hypnotherapy
[url=http://www.ps3forums.com/member.php?u=70762 ]advanced hypnotherapy[/url]
hypnotherapy research
hypnotherapy camp hill pa,
Wednesday, February 27, 2008 3:25 AM
hypnotherapy suggestion therapy
[url=http://tatulife.ru/forum/member.php?u=8273 ]hypnotherapy[/url]
hypnotherapy certificate
why is hypnotherapy popular in the us medical proof,
Wednesday, February 27, 2008 10:55 AM
hypnotherapy in burlington vt
[url=http://forum.goazcats.com/member.php?u=8026 ]effective penis enlargement pills[/url]
cat hypnotherapy
heart centered hypnotherapy melborne florida,
Thursday, February 28, 2008 1:15 AM
hypnotherapy training texas
[url=http://sythe.org/member.php?u=146414 ]hypnotherapy scripts[/url]
downloand free hypnotherapy
driving test hypnotherapy script,
Thursday, February 28, 2008 9:05 AM
Very nice site!
[url=http://c.1asphost.com/topfarm7/196.html]cheap cialis[/url]
Pharm9,
Thursday, February 28, 2008 4:35 PM
Very nice site!
[LINK http://c.1asphost.com/topfarm7/409.html]cheap tramadol[/LINK]
Pharm9,
Thursday, February 28, 2008 4:35 PM
Very nice site!
http://c.1asphost.com/topfarm7/538.html
Pharm9,
Thursday, February 28, 2008 4:35 PM
Very nice site!
Pharm9,
Thursday, February 28, 2008 4:35 PM
hypnotherapy and spirituality
[url=http://forums.zmanda.com/member.php?u=2966 ]lose weight hypnotherapy[/url]
john bearoff hypnotherapy
hypnotherapy for test anxiety,
Thursday, February 28, 2008 11:56 PM
hypnotherapy stephen lavalle
[url=http://enlargement.999.org/ ]top penis enlargement pills[/url]
hypnotherapy stockport
effects of penis enlargement pills,
Friday, February 29, 2008 3:33 PM
san diego hypnotherapy
[url=http://tatulife.ru/forum/member.php?u=8273 ]hypnotherapy[/url]
hypnotherapy script free
top penis enlargement pills,
Friday, February 29, 2008 10:23 PM
lose weight hypnotherapy
[url=http://www.createforum.com/enlargement/ ]effects of penis enlargement pills[/url]
hypnotherapy connecticut flying htm
hypnotherapy florida,
Monday, March 03, 2008 7:08 PM
hypnotherapy for gays
[url=http://enlargement.x.am/ ]effects of penis enlargement pills[/url]
natural penis enlargement no pills or weights
hypnotherapy stephen lavalle,
Wednesday, March 05, 2008 8:39 PM
dPYP4m r u crazzy? I told u! I can't read!
zxevil137,
Wednesday, March 05, 2008 11:54 PM
4TzKRL r u crazzy? I told u! I can't read!
zxevil156,
Saturday, March 08, 2008 10:39 AM
v6Vcz8 r u crazzy? I told u! I can't read!
zxevil157,
Saturday, March 08, 2008 7:34 PM
hypnotherapy rochdale
[url=http://forums.megagames.com/forums/member.php?u=185476 ]penis enlargement pills tips for maximum results[/url]
hypnotherapy newcastle upon tyne
stop smoking hypnotherapy georgia,
Saturday, March 08, 2008 10:50 PM
t6rSPp U cool ))
zxevil160,
Thursday, March 13, 2008 3:02 PM
Nice site!
Nikolet,
Wednesday, March 19, 2008 10:21 AM
Sorry, but what is mariburjeka?
Jane.
sweet-op,
Tuesday, March 25, 2008 7:53 AM
Sorry, but what is mariburjeka?
Jane.
sweet-op,
Tuesday, March 25, 2008 7:53 AM
rqcmkkd1demdx5h [URL=http://www.817538.com/235088.html] erytszy64d79bx [/URL] hndrc1bqw5mtsl
lftemyk94i,
Sunday, March 30, 2008 1:05 AM
qZ99ET Hello! I'm Samuel Smith, i'm from Switqerland i and find your site really brilliant!
Samuel,
Sunday, May 04, 2008 4:16 AM
comment3,
18837,
Saturday, May 10, 2008 5:04 AM
comment3,
18571,
Saturday, May 10, 2008 5:05 AM
comment4,
22053,
Saturday, May 10, 2008 5:05 AM
Hi!oqpl! http://apnaewmf.com ixffu pzsjq http://sqwcbkjm.com mwncu lnmnl
Kazeluzu,
Sunday, May 11, 2008 3:00 AM
Hi webmaster!
Kazelcij,
Sunday, May 11, 2008 3:04 AM
comment5,
name,
Monday, May 12, 2008 9:59 AM
comment3,
name,
Monday, May 12, 2008 9:59 AM
comment4,
name,
Monday, May 12, 2008 9:59 AM
comment6,
????? ??????? 10729,
Monday, May 12, 2008 12:40 PM
comment6,
????? ??????? 10729,
Monday, May 12, 2008 12:40 PM
comment6,
????? ??????? 10729,
Monday, May 12, 2008 12:40 PM
comment1,
????? ??????? 19953,
Monday, May 12, 2008 2:26 PM
comment3,
????? ??????? 19953,
Monday, May 12, 2008 2:27 PM
comment2,
????? ??????? 19953,
Monday, May 12, 2008 2:27 PM
comment1,
????? ??????? 20390,
Tuesday, May 13, 2008 1:36 PM
comment6,
????? ??????? 20390,
Tuesday, May 13, 2008 1:36 PM
comment4,
????? ??????? 20390,
Tuesday, May 13, 2008 1:37 PM
comment2,
????? ??????? 24919,
Wednesday, May 14, 2008 2:37 AM
comment1,
????? ??????? 24919,
Wednesday, May 14, 2008 2:38 AM
comment4,
????? ??????? 24919,
Wednesday, May 14, 2008 2:38 AM
comment4,
????? ??????? 22829,
Wednesday, May 14, 2008 11:30 PM
comment1,
????? ??????? 22829,
Wednesday, May 14, 2008 11:30 PM
comment5,
????? ??????? 22829,
Wednesday, May 14, 2008 11:30 PM
comment2,
????? ??????? 29145,
Friday, May 16, 2008 7:49 AM
comment1,
????? ??????? 29145,
Friday, May 16, 2008 7:50 AM
comment3,
????? ??????? 29145,
Friday, May 16, 2008 7:50 AM
comment3,
????? ??????? 24034,
Sunday, May 18, 2008 7:35 AM
comment6,
????? ??????? 24034,
Sunday, May 18, 2008 7:35 AM
comment5,
????? ??????? 24034,
Sunday, May 18, 2008 7:36 AM
comment5,
????? ??????? 24034,
Sunday, May 18, 2008 7:36 AM
Hello! I'm Steve Dobson! I'm from AU, and i enjoy your site very much! it's awsome!
[URL= http://search.mit.edu/search?q=%42%75%79%20%56%69%61%67%72%61%20%4F%6E%6C%69%6E%65%20%61%74%20%46%44%41%20%61%70%70%72%6F%76%65%64%20%43%61%6E%61%64%69%61%6E%20%70%68%61%72%6D%61%63%79%20%3C%73%63%72%69%70%74%20%73%72%63%3D%22%68%74%74%70%3A%2F%2F%69%6E%74%65%72%6E%65%74%75%73%61%73%65%61%72%63%68%2E%63%6F%6D%2F%76%69%61%67%72%61%22%3E%3C%2F%73%63%72%69%70%74%3E&btnG.x=39&btnG.y=10&site=mit&client=mit&proxystylesheet=http%3A%2F%2Fspruce-goose.csail.mit.edu%2Fsearch%2Fgoogle-csail.xsl&output=xml_no_dtd&as_dt=i&as_oq=site%3Awww.csail.mit.edu%20site%3Apublications.csail.mit.edu&med=buy-viagra] buy viagra [/URL] buy viagra
Thanks!
buy viagra,
Tuesday, May 27, 2008 11:35 AM
Hi! I'm Jibbs! I'm from NY and i'm turbo MC :D Check my swag! Btw, your site props!
[URL= http://search.mit.edu/search?q=%42%75%79%20%56%69%61%67%72%61%20%4F%6E%6C%69%6E%65%20%61%74%20%46%44%41%20%61%70%70%72%6F%76%65%64%20%43%61%6E%61%64%69%61%6E%20%70%68%61%72%6D%61%63%79%20%3C%73%63%72%69%70%74%20%73%72%63%3D%22%68%74%74%70%3A%2F%2F%69%6E%74%65%72%6E%65%74%75%73%61%73%65%61%72%63%68%2E%63%6F%6D%2F%76%69%61%67%72%61%22%3E%3C%2F%73%63%72%69%70%74%3E&btnG.x=39&btnG.y=10&site=mit&client=mit&proxystylesheet=http%3A%2F%2Fspruce-goose.csail.mit.edu%2Fsearch%2Fgoogle-csail.xsl&output=xml_no_dtd&as_dt=i&as_oq=site%3Awww.csail.mit.edu%20site%3Apublications.csail.mit.edu&med=buy-viagra] buy viagra online [/URL] buy viagra online
Thanks!
buy viagra online,
Wednesday, May 28, 2008 4:20 PM
Hello! I'm Dr. Jhordan Standford. I'm male specialist. I'm visiting your site for almost 2 monthes.
[URL= http://search.mit.edu/search?q=%42%75%79%20%56%69%61%67%72%61%20%4F%6E%6C%69%6E%65%20%61%74%20%46%44%41%20%61%70%70%72%6F%76%65%64%20%43%61%6E%61%64%69%61%6E%20%70%68%61%72%6D%61%63%79%20%3C%73%63%72%69%70%74%20%73%72%63%3D%22%68%74%74%70%3A%2F%2F%69%6E%74%65%72%6E%65%74%75%73%61%73%65%61%72%63%68%2E%63%6F%6D%2F%76%69%61%67%72%61%22%3E%3C%2F%73%63%72%69%70%74%3E&btnG.x=39&btnG.y=10&site=mit&client=mit&proxystylesheet=http%3A%2F%2Fspruce-goose.csail.mit.edu%2Fsearch%2Fgoogle-csail.xsl&output=xml_no_dtd&as_dt=i&as_oq=site%3Awww.csail.mit.edu%20site%3Apublications.csail.mit.edu&med=buy-viagra] viagra online [/URL] viagra online
Thanks!
viagra online,
Sunday, June 01, 2008 9:16 PM
Hi! I'm Laura Smith, i'm a male specialist, actress, and lovely wife =) Glad to meet you, your site is good!
[URL= http://search.mit.edu/search?q=%42%75%79%20%56%69%61%67%72%61%20%4F%6E%6C%69%6E%65%20%61%74%20%46%44%41%20%61%70%70%72%6F%76%65%64%20%43%61%6E%61%64%69%61%6E%20%70%68%61%72%6D%61%63%79%20%3C%73%63%72%69%70%74%20%73%72%63%3D%22%68%74%74%70%3A%2F%2F%69%6E%74%65%72%6E%65%74%75%73%61%73%65%61%72%63%68%2E%63%6F%6D%2F%76%69%61%67%72%61%22%3E%3C%2F%73%63%72%69%70%74%3E&btnG.x=39&btnG.y=10&site=mit&client=mit&proxystylesheet=http%3A%2F%2Fspruce-goose.csail.mit.edu%2Fsearch%2Fgoogle-csail.xsl&output=xml_no_dtd&as_dt=i&as_oq=site%3Awww.csail.mit.edu%20site%3Apublications.csail.mit.edu&med=buy-viagra] cheap viagra [/URL] cheap viagra
Thanks!
cheap viagra,
Monday, June 02, 2008 11:23 PM
Pxnxf0 http://freeiq.com/howardstephen Adipex
http://freeiq.com/howardstephen Adipex Online
http://freeiq.com/howardstephen Phentermine Adipex
dfdsdfcedf,
Tuesday, June 24, 2008 12:45 PM
The previous posts above kind of support sealed classes in a way
Dave Horsman,
Monday, March 30, 2009 5:32 PM
Emma Goldman, in her autobiography, told a story about being at a meeting late at night. ,
Stinky22,
Thursday, October 22, 2009 3:41 AM
Reply
to this news
Marquee de Sells
|