Page 52 of 63
..
Posted: Sat Nov 07, 2009 4:45 am
by Lestradae
I see three issues here. Legal, practical, and the human factor.
Concerning the
legal issues I copy and paste my answer to the "Licensing oxps" sticky in here:
Ahruman wrote:A general clarification here: nobody in the comoonity is going to start waving lawyers about (you there! Put down Littlebear at once!). ...
... For instance, if you use a license that doesn’t permit derivative works, and someone tries to determine how far they can go while not quite being derivative, then it’s clear that person is acting in bad faith; whether they would “get away with it” in court is little more than a thought experiment. ...
... Using a plethora of different licenses also introduces a risk of conflicting licenses, where it would be possible to use aspects of OXP A or OXP B, but not both, because of some silly unintentional detail.
Which clearly illustrates the can of worms you do open not only for my "Oolite Extended" and any meta-oxp idea, but also for yourself and all oxp authors here if you - in the future - accept people issuing oxps not under the Creative Commons "copy-left" license, but other licenses that permit restrictions to share-alike as well.
The fact that restricting one's contributions to an open source hobbyist project completely dependent on copy-left agreements concerning the share-alike option won't stand a snowball's chance in hell in front of any court in the western world is not the relevant aspect here, quite correct.
The next step would - logically - be to enforce on the board and wiki that no one "acts in bad faith" (in regard to your definition of that above) and uses stuff from someone else who doesn't want that to happen. That will - coincidentally - in a nice and pseudo-legalese way sink my "aaall-of-it" project immediately.
But the pandora's box scenario you open up is this. In the future, if A doesn't like B, A will simply make their A.oxp license-restricted concerning the share-alike aspect so that B can't use stuff from the A.oxp in the B.oxp. Sure, B can ask A, but as A doesn't like B, A always says no.
But then there's C, and C and A are getting along well. So C does the C.oxp and with A's permission uses stuff from A.oxp in there. C does use the share-alike option, meaning that now
some parts of the fictional C.oxp are sharealike and some not!
The end result will be this: Not only concerning oxps, with every shader, every texture, every AI someone wants to reuse in another oxp, be it on a big scale like in OE or on a smaller scale, the question has to be: Which license applies to that single shader here? In which oxps is it, and are they share-alike or not?
Already see where this is going? But it gets even better.
It was claimed above that the original oxp author can also change the license on a whim. Meaning, that even if the particular shader/texture/AI/whatever is free to share now, it might, as a result of a future quarrel between Z and Q, suddenly become "illegal" or at least "bad faith" that it is in B.oxp, C.oxp and Q.oxp as well.
And so on. This could de facto and quite probably unintentionally become the most elaborate scheme yet to remove future Oolite Extended from Oolite or at least the boards and wiki. Besides the human factor, I wouldn't go down that road. You are going to pay a very high price for not demanding the share-alike option licenses for all oxps. See above what will probably happen.
Concerning the
practical issues with updating, these can be solved. Be it with patching OE every month (so no complete monthly re-downloading a gig data is nescessary) or be it with a SVN trunk solution for OE as matthewfarmery and I already debated, including giving oxp authors the right to directly access and update their stuff in that future OE trunk should they want to do so. That's no showstopper.
Let's get to the
human factor. This sort of attacks on my work - into which I have been investing 15-hour-weeks for a year now, to have an impression of it's scale - has sucked out any joy I had in trying to contribute something to Oolite, and I feel the way the RS/OSE/OE story has unfolded must be very disheartening to anyone who considers investing time and energy into contributing to Oolite.
I, too, have very personal reasons to invest that much into Oolite - getting over something, if you must know - so it would not be a good metaphor for me personally if the OE project effectively went down the drain due to this.
It is good that the admins have started to "police" this kind of kindergarten behaviour and try to iron out "rules of the game" concerning share-alike, but for me it might be too little too late. I feel it is deeply unfair that
my work and contribution could unpunished be treated as such for two years - called a bug despite being less buggy than some of the original oxps, insulted, getting roadblocked time and again etc.
I strongly advice against allowing non-share-alike licensed oxps into Oolite at all. It will open up a quagmire of pseudo-legal issues and be the playingfield number one for every personal animosity you can imagine.
It will lead to the sort of stifling creativity (because you are not free to use and re-use things in other oxps) that led to the founding of the copyleft movement in the first place.
L
Posted: Sat Nov 07, 2009 9:04 am
by Killer Wolf
i think enough people are laid back enough here w/out resorting to the complex legal stuff you lay out above. this has simply escalated from the practice of taking other people's work and changing it as you see fit. You did this w/ my Vampires in RS, and it irked me for the fact that the ships are MY creation and have MY developement history story behind them as detailed in their "sales brochure". Now, i'm not about to go demanding this or that gets pulled or binned or not shared, but i'm using it as an example as to why people get their feathers ruffled.
some comments towards you and your work have been totally out of order, no one is going to deny that. however, the way forward seems to be, instead of extending this prob any further, and spending time on huge postings justifying each other's sides of view, try this for the sake of a peaceful community :
list the OXPs you have included. give every author the chance to say (PM or public) whether or not they're happy w/ you to keep them in. if they are happy, they must state if they're happy w/ you "tweaking" any details or specs of ships, otherwise they get left as-is. If they're happy to have them included, they must say whether or not they'd be willing to put in the time to maintain them. if they're not, you have to decide whether you can/will do it. if you can't for whatever reasons, then remove them to prevent things potentially getting out of step.
perhaps this should have been done before the project was started, but hopefully it's not too late to get things back on the rails now, and bury hatchets.
Posted: Sat Nov 07, 2009 2:03 pm
by Kaks
Oolite and OXPs are different things, and as far as I'm concerned, they should remain so. Neither Ahruman, nor me nor anybody else can dictate what licences oxp makers want to use.
As a developer, I'm contributing to Oolite on the understanding that what I'm producing is done so under GNU GPL and CC Share Alike licences, and I'm very happy to do so.
As an OXP maker, so far I've released oxps under CC Share Alike licences.
I could consider other open source licences, there are many that would be suitable, and would not be in conflict with whatever licence Oolite is released with.
After some deal of thought, I think I might be using a CC No Derivatives licence for parts some of my OXPs in the future, and fully reserve the right to do so. (edited to reflect further clarification on the matter in the OXP licencing thread.)
Incidentally, in my view, doing so would help the process KW is talking about in the post above.
Posted: Sat Nov 07, 2009 8:45 pm
by matthewfarmery
oh dear, how things have turned bad pretty quickly, I know I haven't been on much, been doing a bunch of stuff, however after seeing this thread turn into a warzone, then sorry to say, I'm not want to be in the centre of this, so until the above issues are sorted, (yes I read a bit of it) Im staying clear of this mod, sorry L, but if you are using other peoples mod without permission, then I can't really help you farther, I do think the mod's new size is probably too big, I know you have a lot of plans, but the other problem is, the more you add the harder it is to track bugs and work out what script /s is causing those bugs, been a beta tester for a long time to know that, if you know for certain that A, B and C script is bug free, then fine add script D, but adding too many scripts will just make the whole game unstable and harder to debug, in a way, you have bitten more then you can chew with this, I liked RS, it was stable and it was small, not everyone has fast broadband or unlimited bandwidth, that was one of the reasons I looked into SVN, as it would make things easier, but no one is using it
but anyway, until you clear this matter up, Im staying clear of this mod, again sorry, but I don't want to be in a middle of a wayzone,
M
Posted: Sun Nov 08, 2009 2:25 pm
by Eric Walch
I have no problems when others use part of my code in their work. I even encourage this by adding comment to my code so other can easier understand the parts of my code theu could use for themselves.
However I have problems when my oxp's are integrated in other oxp's, than changed to suit the new oxp while claimed in the readme that it contains the originals. OSE simply does not!
- my deepSpacePirates.oxp is not written for super experienced players. Starters should also be able to install it. I balanced it that way, but in OSE it does not add pirates, but hardpirates. I even have no problems with that, but the readme must not claim it contains that original oxp. It doesn't!
Than the claim that you always get the newest code. It is not. The code used by ose was written for Oolite 1.72. Some parts of the code stopped working with 1.73. At least the cleanup code for pirates left behind in deep space does not work anymore for escorts. The version on the wiki was already adapted to 1.73 including the new group feature while the old script in ose was modified further. A month ago I pointed pmw57 that he was working with outdated code of dsp but when I today look in the ose repository it still contains the outdated script that does not work optimal with 1.73
It is probably a lot of work to add the ose changes to updates everytime there is a new update, but than just don't claim the version in ose is equivalent to the original oxp. I don't like bug reports about my work about bugs I never added to the code or that I already removed long ago.
- I also read it contains the targetReticle.oxp. This is completely incorrect. The only thing is does is also changing the reticle but in no way similar to the targetReticle.oxp. The ose one ignores any reticle that was defined in the HUD and removes it even. Then, once bought, you can never loose it anymore. It cant be damaged and moves with the player to new ships. I have no problems when it is programmed that way, but the readme should not confuse players by stating it contains the original equipment. It simply does not! The original takes all kind of exceptions into account.
- I put a lot of work in writing UPS_courier. When there are problems I fix it. This kind of mission oxp's are very complex structured. When others add bugs in it by changing parts, this can influence some mission variables. However, missionvariables are stored in the save file and even when removing OSE and returning to my original oxp users can keep gettingt bugs, inherited by OSE. Potentially it could spoil all future ups missions for that commander.
And even when Lestradae claims he does not change anything, he already does by copying parts to an other oxp without knowing what he is actually doing.
- A few months ago I got a message from someone that Ixian_ships.oxp had a bug. He found that bug in OSE but suggested that is already was in my original conversion. After looking up it seemed that the original was okay, but parts that were added for backward compatibility with Oolite 1.65 were just copied to the main code of ose. Last month that 1.65 code was even converted to JS while somewhere else in the OSE project that code was already present as JS version for current oolite. This results in adding ships twice! I even pointed pmw57 to the fact he had just converted stuff from legacy into JS that was already present in ose. Looking it up today in the repository i see it still contains both addition scripts.
For the non-mission oxp made by me me, I have no problems when they are added to ose, just don't claim you get the same as the originals. For those oxps users can always remove ose and switch back to the original code. However I don't want my mission oxp's integrated into ose. Any bug resulting from bay integration can become permanently written to the save file and could persist when switching to the original. When L wants to include it, he should just include it as a separate.oxp in its original state. This is the only way endusers can be sure that they have a correct working mission.oxp
..
Posted: Sun Nov 08, 2009 6:32 pm
by Lestradae
Killer Wolf wrote:some comments towards you and your work have been totally out of order, no one is going to deny that. however, the way forward seems to be, instead of extending this prob any further, and spending time on huge postings justifying each other's sides of view, try this for the sake of a peaceful community :
list the OXPs you have included. give every author the chance to say (PM or public) whether or not they're happy w/ you to keep them in. if they are happy, they must state if they're happy w/ you "tweaking" any details or specs of ships, otherwise they get left as-is. If they're happy to have them included, they must say whether or not they'd be willing to put in the time to maintain them. if they're not, you have to decide whether you can/will do it. if you can't for whatever reasons, then remove them to prevent things potentially getting out of step.
I quite agree.
If I decide to go on with developing this this would indeed have to be the way forwards.
Killer Wolf wrote:perhaps this should have been done before the project was started, but hopefully it's not too late to get things back on the rails now, and bury hatchets.
I would be happy if that was the case. No use throwing blame around, but imo the "totally out of order" behaviour of some in the past were the single reason for this project to be done without much cooperation with original authors.
See matthewfarmery's reaction up above. For various reasons, diverse people in the past did not or no longer do dare to be associated with me or this project for fear of getting the same treatment. Not exactly inspiring cooperation, is it?
Even now, there have been people telling me of their support via PMs and EMail. They do not dare voice that here. That's quite telling. If I should continue and am expected to do it more cooperatively, the reactions towards RS/OSE/OE have to change - fundamentally.
I am atm considering the options I have - continue this as a public project and re-attempt to make OE into a more cooperative effort; continue this as a private project for a few people interested without ever publishing OE, then it's my/our problem what is in there & I/we do with it (as then OE would become a "living-room" custom oxp for 10, 12 people) or stopping work on it altogether.
Should I continue, I will ask the questions you suggested publicly to the original oxp creators here.
L
Posted: Sun Nov 08, 2009 8:13 pm
by pagroove
Well I hope this project goes on simply because of all the hours you've put into it and for the new gameplay twists it can offer. Although when it's out I make a seperate Oolite Install for it.
Somewhere in between should be the ideal compromise of merging OXP's in a way that's everybody happy with. So I hope the OXP community can agree on a good method to make OXP's share-able. I feel (I speak for myself) that asking is the best way in case if you are unsure if you may of my not alter an OXP. It'a a sort of gentlemen s' agreement.
..
Posted: Sun Nov 08, 2009 9:58 pm
by Lestradae
Hi P.A.Groove,
Thanks for your support!
pagroove wrote:Somewhere in between should be the ideal compromise of merging OXP's in a way that's everybody happy with. So I hope the OXP community can agree on a good method to make OXP's share-able. I feel (I speak for myself) that asking is the best way in case if you are unsure if you may of my not alter an OXP. It'a a sort of gentlemen s' agreement.
As said, if I continue, this must be the way forward - but for me to even considering to continue this and not simply wasting my time some more with something that will be shot down again with yet again new reasons at the next junction, is to be sure that a gentleman's agreement can be done, even with people who were RS/OSE/OE haters in the past.
I would have been
much more cooperative - and communicative - about OE in the past if the reaction of some hadn't been to just attack me for trying to realise this project.
If that really changes, I'll really change my approach, too.
Many "ifs", and some quasi-legal questions to clear before even thinking about it here.
L
Posted: Sun Nov 08, 2009 9:59 pm
by Kaks
I personally was thinking that any possible confusion/clashes/weird bugs could be avoided if OE-Hotrods (using that as an example, but could be applied to quite a few mission oxps) used different mission variables & different ship names as well as a different script name.
I think the main problem here is that Something.oxp inside OE is not, in quite a few cases, exactly the same as the original Something.oxp.
If it does help clarify things, maybe having two separate Oolite installations is not such a bad idea. The OE one could even include its own personalised splash screen, to make it clearer which one is starting up...
.
Posted: Mon Nov 09, 2009 6:00 am
by Lestradae
As I already wrote in the OE thread, before thinking if I
want to continue three issues have to be resolved first: The legal, practical, and human factor issues.
I will try to solve them in that sequence. So the legal issue is the first and most relevant, as anything else depends on that as a basis. I will first try to get the legal issues out of the way before taking care about the practical and human issues. (Which I will. Afterwards.)
I am no lawyer too, but have read through the
Creative Commons Attribution-Noncommercial-Sharealike 3.0 Unported license which is Oolite's. If I understand correctly what it says there - and use common logic from there - I come to the conclusion
that strictly legally it is not possible to restrict the use of oxps to non-derivative and non-bundle at all.
http://creativecommons.org/licenses/by-nc-sa/3.0/
It says there:
1) You are free to Share — to copy, distribute and transmit the work.
2) You are free to Remix — to adapt the work.
Note that point 2 exactly covers the topic of derivative works debated here.
It also says below (amongst other things):
"Share Alike — If you alter, transform, or
build upon this work, you may distribute the resulting work only under the same or similar license to this one."
And there we have it.
Build upon this work. This is
exactly and logically
undisputably what Oolite's oxps do. They
build upon Oolite itself.
The reason? Oxps can't be seen as "independent" of Oolite in any way, or something that "runs alongside". Without Oolite itself, they are completely useless lines of code that do nothing in and of themselves. They can
exclusively be used together with Oolite! Therefore, oxps most definitely are
derivative works of Oolite that
build upon it!
Which brings us to the last point, if we combine the above three statements into one statement using logic, it says:
"If you create an oxp for Oolite, you may distribute the resulting work only under the same or a similar license to Oolite's - which means, other people are free to Share, to copy, distribute and transmit, and to adapt your work (oxp)."
If someone can explain to me a sound reason why the above should not be the case without going to legal hair-splitting extremes, I take back what I say here - but I can't see how.
I rest my case, so to speak.
Btw, before anyone else panics now: I have no intention to damage the integrity of this community and game in any way. So after clearing the legal issues, I
will in any case, whatever the legal "solution" to this actually turns out to be do my part to clear the practical and human factor issues that came up, too - I would find it a good thing if hatchets could be buried, a new chapter opened and a possible future OE be more of a community-including effort than it has been in the past.
But, what I am going to demand from my side is - after having to endure pointless hostilities for two years coming from attitudes that don't care at all if
my work goes out the window however much I invested into it - no further artificial showstoppers via hairsplitting happen. So I won't stop doing something because someone else doesn't like it.
The legal issues are point one. Then I will take care about the arguments concerning the (im-)practicalities of something like OE (updating, bug-fixing, etc. that bundle). Last I will see to the human factor of all willing to bury hatchets.
I'll post this in the Oolite Extended thread and the OXP Licensing thread both, not ideal, but it affects both topics.
L
Re: .
Posted: Mon Nov 09, 2009 7:47 am
by Commander McLane
Lestradae wrote:And there we have it. Build upon this work. This is exactly and logically undisputably what Oolite's oxps do. They build upon Oolite itself.
The reason? Oxps can't be seen as "independent" of Oolite in any way, or something that "runs alongside". Without Oolite itself, they are completely useless lines of code that do nothing in and of themselves. They can exclusively be used together with Oolite! Therefore, oxps most definitely are derivative works of Oolite that build upon it!
That is what I believed, too, when I started writing OXPs, therefore I naturally released them under the same license as Oolite itself. (And I think I will continue to use CC-by-nc-sa, because generally I am happy with it.)
However, Ahruman keeps telling us again and again (last time
here and
here) that this is
not the case. OXPs are independent works, their usefulness or executability with or without Oolite
does not matter.
They are only derivative works of Oolite
if they contain siginificant portions of Oolite's code.
Judging by this, and speaking of my own OXPs, Anarchies is
not a derivative work of Oolite, because it doesn't contain anything c&p'd from the Oolite application (at least from Ahruman's viewpoint a
like_ship reference without c&p'ing the model or texture of the ship does
not qualify). However, it is a derivative work of a couple of other OXPs, out of which I
did c&p ship models and/or textures; and all of them are mentioned in the readMe with thanks to their respective authors. (To be completely frank: I just checked each of these OXPs. None of them has a license at all, so
strictly legally speaking I had no right to use them; on top of that neither I nor you nor anybody else has
even the right to download and install them in an AddOns-folder, because their authors didn't explicitely give us any rights. This is what Ahruman calls
"somewhere between “legally murky” and “illegal”".)
Total Patrol, on the other hand, clearly
is a derivative work of Oolite, because it contains the file totalPatrolAI.plist, which was created by c&p'ing the files route1patrolAI.plist and route2patrolAI.plist from inside Oolite.app, and then modifying them. Similarly Status_Quo_Q-bomb contains a c&p'd and then modified file timebombAI.plist, which originally stems from inside Oolite.app (and is supposed to replace the one inside Oolite.app), which also
does make it a derivative work of Oolite.
So, the question of being a derivative work, as far as software is concerned, is
not whether or not an OXP depends on Oolite for running or not. It is
only whether any file contained in the OXP originated from (read: its content was copied and pasted from) Oolite.app.
In case of
your own OXP this means that it
is a derivative work of each and every OXP out of which you have taken any file and incorporated it in your own OXP (and of Oolite itself, if you have c&p'd anything out of Oolite.app). Therefore you have to respect the licenses of each and every OXP you are using. And—as the original OXPs may have been published under different licenses—the whole work has to be published under the
most restrictive license found in its parts, if I understand Ahruman
here correctly.
As far as matthewfarmery's drop-out is concerned, I think you got it wrong. He is not dropping out because he fears to be "bullied" through his association with you, or because you have been "bullied" in the past (personally I don't think you have been; there has been criticism (and sometimes indeed heavy criticism) of
factual points in the various incarnations of your OXP; whether you understand the
factual criticism, or take it as
personal "bullying" is beyond the control of those who have criticised your OXP). But he is dropping out, because you have been sloppy with other people's work:
matthewfarmery wrote:...sorry L, but if you are using other peoples mod without permission, then I can't really help you farther...
Posted: Mon Nov 09, 2009 7:59 am
by Killer Wolf
sigh.
dude, all this legal stuff is really going over the top. it's not a case of whether anyone follows the letter of an open source type licence like OOlite or not ~ everyone who creates here knows the ins and outs as much as they want and (i hope i speak for everyone) the licence is about the LEAST of our interests. we build because we love Oolite and the creation process. the licence says you can take and change if you want - well great, but as the phrase goes, just because you CAN doesn't mean you SHOULD. people put as much time and effort into their things as you did yours, and you should accept that they don't like people taking and changing their stuff w/out permission. You quote chapter and verse of the legal thing as if you think someone's gonna slap a lawsuit on you, but all it is is people getting miffed that you've seen fit to think their creation wasn't "right". this is aside from getting into the points raised before about having parallel versions of an OXP, or of an errant claim as to which version is included which makes it harder to chase bugs.
please stop banging on about legalities and persuading us you have the right to do this OXP due to the licence. that's not the issue. what is the issue is acknowledging that people put their heart and soul into their own OXPs and to find out someone's gone and changed it on a whim is, to say the least, pretty vexing.
i hope you do continue and get this sorted, even though it now seems to be for just 10 or 12 people rather than the thousands interested you mentioned earlier, as every OXP adds to the community and game whether or not someone chooses to download it or not.
Posted: Mon Nov 09, 2009 8:09 am
by Thargoid
Personally I would say the fact that OXPs don't run on their own actually means they are not derivative but are run-alongside and independent. A derivative is a modified version of an existing something, for example Screet's personal version of the game engine with his scanner stick-colour hack in place.
OXPs are generally independent works, the only time when follow-on licenses come into play are as McLane correctly says (and Ahruman repeatedly has said) is when they contain lumps of C&P oolite, be that scripts, models or textures. So similarly in my case Planetfall can be under any license I please, but Second Wave would need to follow Oolite itself as it contains trunk textures (albeit modified ones).
Posted: Mon Nov 09, 2009 10:52 am
by Selezen
I agree with Killer Wolf. This is going way over the top.
All this legal mumbo jumbo is killing our friendly commoonity. No longer are we the friendliest board this side of Riedquat! I'm seeing shades of Jannah Berihn and the EBBS!!
Isn't legal posturing a bit much? Oolite is a free game, made possible by donations of effort from a
community. No-one is paid for this stuff, we do it because we loved Elite and we love Oolite. Oolite itself was only put under a license to protect the huge investment of time that Giles (and not Ahruman et al) put into making the game work and making it brilliant.
OXPs are the community's way of paying back some of that effort and making it the game that we want in our own way.
I feel that some respect should be given to the authors of stuff, sure. I feel that some politeness should be observed too. For example, if I wanted to develop something that incorporated someone else's work, I would ASK that person before doing it. If that person asked for their material not to be included I would honour that request. It's called common courtesy, and it's something this community has always had in spades, so I'm surprised things have got to this stage.
Come on, guys, let's stop all this fighting please. We're losing members because of it and that's something I never thought I would see here. Please respect the wishes of the OXP authors no matter what their licensing model is and try to respect the opinions of others. Please?
P.S. I know there are a lot of issues around licensing, but I'm old school - I remember the days before GNU and GPL and CC licenses, when the internet was fair game for anything. Communities survived through mutual respect for each others property and effort. Yeah there were mercenaries out there that just took whatever they liked, but there were loads of places where co-operation resulted in good outcomes.
Engage tongue in cheek mode - take the rest of this with as much weight as you personally feel is appropriate:
Dave's Directives for the Galactic Co-operative of Oolite Developers
1: Don't use someone else's work without permission. If that person is not available and is not likely to be available to get permission, use their work WITH ACCREDITATION.
2: If someone requests that their work be removed from something of yours, honour that request without argument. They
did create it after all...
3: Be objective. If you would have offered permission to someone to use your work but they haven't asked, then point out the fact that you would like to be asked, but don't go crazy. Support your fellow developer and (in the spirit of this community) teach them the right way to do things...
4: Stop banging each other over the head with licensing models. if you don't want people to use your stuff then why write it in the first place? Oolite was MADE to be improved. Your work should follow the same model.
5: Please please please remember that opinions are subjective - there will NEVER be a consensus of opinion on ANYTHING on a board this size, so don' try to make it happen. Not everyone will like your OXP. Not everyone will DISLIKE your OXP either. My personal measure is that if ONE person likes something I've done I'm happy (and I have no problem fixing the problems that the other 72 people have either)...
6: Serve the public trust.
7: Protect the innocent.
8: Uphold the law.
9: [CLASSIFIED]
Posted: Mon Nov 09, 2009 12:17 pm
by Kaks
Oops, wish I'd seen this post earlier! Hopefully once all the para-legal dust settles, we might well be presented with a bunch of people with cakes at the ready, rather than rattling sabres. If there's any on offer, could I have a trifle please?