iliar with, has its own plotting code, dunno about
Sage, in any event just reusing the splitting algorithm isn't any big
deal.
best,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and s
k we (Maxima project) should dump it.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To pos
n(3*x)+3*sin(x))/24
Obviously the presence of 'false' is a bug.
If you can make a bug report in the Maxima bug tracker, that would very
helpful. https://sourceforge.net/p/maxima/bugs
By the way I am working with Maxima 5.40+ (almost 5.41).
best,
Robert Dodier
--
You received this message because yo
e, to prevent
that conversion. That causes trouble, given the widespread implicit
assumption about exact numbers.
It's a bug of course -- perhaps you can submit a bug report to:
http://sourceforge.net/p/maxima/bugs
but you can work around it by setting keepfloat to false, or writing 1/5
instead
ceforge.net/p/maxima/bugs/3280 for a related bug.
HTH
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
T
run into a similar error with the next call to a Maxima function.
Sorry I can't be more helpful,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an ema
msy but not incorrect.
HTH in some way.
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
I guess I'm also assuming that Sage punts to Maxima for real() here. But
integral_numerical is probably not calling Maxima, right?
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group an
I tried as an experiment) introduces its own problems though.
That exposes some bugs in gruntz, and also some results which are
different, so it would be necessary to trawl through them and verify
that they're correct.
best
Robert Dodier
--
You received this message because you are subscrib
e same for domain:real and
domain:complex).
Reported as: https://sourceforge.net/p/maxima/bugs/3126/
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from
this directly in Maxima, the equation is
solved in both cases. (I assume that Sage calls Maxima to solve
equations; is that right?) Heaven knows Maxima has 1 bug in which
results depend on the names of variables, but I guess this isn't
one of them.
best,
Robert Dodier
--
You received this message because
on it, for the record.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send
decidable to Maxima, you can get a
partially-evaluated conditional, but not a partially-evaluated
loop (triggers an error), and various programming functions (e.g.
length, first, integerp) might act in an unexpected way. This, too,
hasn't caused trouble, from what I remember.
FWIW
Robert Dodier
--
You
(-1,-log(2))
(%i7) %, numer;
(%o7) 1.273097216447114
(%i8) quad_qags (foo, x, 2, 3);
(%o8) [1.273097216447114,1.413421842285782E-14,21,0]
Looks like Maxima handles the definite and indefinite integrals as
expected. Or perhaps I have misunderstood the problem?
Hope this helps,
Robert
this clear above. Is this a bug, or am I
missing something?
This is a bug. If you have time, can you please report it to the
Maxima bug tracker: http://sourceforge.net/p/maxima/bugs
best,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support
);
mat_function (log, mymatrix);
For large, numerical matrices, I'm sure linalg.logm is much faster.
But for small or nonnumerical matrices, maybe Maxima is useful.
Hope this helps,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe
range of problems). But I find that Maxima's
'to_poly_solve' can solve it. Maybe someone here can say how to
call it from Sage.
In fact, the solution is: w=t+t^2
Are you sure? Assuming some value for t, plotting the expression
doesn't seem to show a solution at w = t + t^2.
best
Robert Dodier
://sourceforge.net/p/maxima/bugs
best,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To post
On 2014-09-20, Kristoffer Ryhl-Johansen kristofferr...@gmail.com wrote:
f(x)=log(1-x)*log(1+x)/(1+x)
f.integrate(x,0,1)
Produces a segfault when I run it on my ubuntu 14.04 computer
Fixed by Maxima commit f7921c5265 (bug in Risch code).
best
Robert Dodier
--
You received this message
packages loaded by
abs_integrate, but that doesn't seem to be the case; so I guess the
problem is triggered by abs_integrate itself.
I will try to investigate some more. If someone files a bug report,
that will help us track it. http://sourceforge.net/p/maxima/bugs
best
Robert Dodier
--
You
(f2, x, 1, 10^11) fails (with error=5, integral
is probably divergent or slowly convergent) but
quad_qag(f2, x, 1, 10^11, 4) succeeds, likewise quad_qagi(f2, x, 1, inf)
succeeds. If Sage is indeed calling QUADPACK, perhaps at least the
error number can be reported?
For what it's worth,
Robert
quadrature in
Sage!
Yes, but most of them are QUADPACK, right?
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr
it is certainly a drawback.
I don't know if e.g. SymPy could solve it; I didn't try.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support
as n increases without
bound. So I'm guessing the limit is zero.
If you need a proof, maybe you can show the integral is bounded,
therefore the limit is zero.
Sorry I can't be more helpful,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support
and presentation MathML. I tinkered with maximaMathML
a couple of months ago and it seemed to work OK (after fixing some
bugs). Write me off-list if you're interested.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group
)*bessel_i(-1/2,x^(3/2))*x^(3/4)/sqrt(2)
Hope this helps,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com
, inf);
(%o20) -log(2)
best,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send
;
(%o12) -asin(x)+u+%pi/2
(%i13) asin(sqrt(3)*sqrt(2)/3) + asin(sqrt(3)/3) + asin(sqrt(1 - u^2)) +
asin (u);
(%o13) %pi
This is just what I got from some half-hearted hacking; I'm sure there
are serious limitations.
Good luck, have fun, hope this helps.
Robert Dodier
--
You received
), 'integrate(...)).
'integrate is a formal integral -- it doesn't invoke the code to solve
definite integrals -- so it won't bump into that error.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group
On 2013-07-18, Ed Scheinerman edward.scheiner...@gmail.com wrote:
sage: sum(1/binomial(n,k),k,0,n)
(n + 1)*2^(-n)
and that answer is wrong.
That's a bug in Maxima's simplify_sum -- reported as bug # 2614.
https://sourceforge.net/p/maxima/bugs/2614/
best
Robert Dodier
--
You received
type.
HTH
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage
what might be available in Sage
proper.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To post
in to_poly_solve -- I didn't go farther. Can
someone please submit a bug report. http://sourceforge.net/p/maxima/bugs
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To unsubscribe from this group and stop receiving emails from it, send
anything unless the exponent is a literal integer, so the question
seems pointless. I'd have to look at it again before figuring out if the
question could be skipped.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group
as the basis for an implementation? Pointers to any other
resources would be interesting.
best
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To post to this group, send email to sage-support@googlegroups.com.
To unsubscribe from
. Are there implementations of these approaches in
Sage or any upstream project? (e.g. PARI/GP, Singular, I don't know.)
best,
Robert Dodier
--
You received this message because you are subscribed to the Google Groups
sage-support group.
To post to this group, send email to sage-support@googlegroups.com
()),
%if(?%and(-%pi/2 parg(sqrt(4*c+b^2)+b),
parg(sqrt(4*c+b^2)+b) = %pi/2),
[d = (b*sqrt(4*c+b^2)+2*c+b^2)/2],%union()))
I didn't check the result; sorry about that.
best
Robert Dodier
--
You received this message because you are subscribed to the Google
) that you are
looking for a numerical result. If so, you can try splitting the
integrand into real and imaginary parts, and applying a numerical method
(Sage has Quadpack functions) to each part.
Hope this helps,
Robert Dodier
--
You received this message because you are subscribed to the Google
--
hard enough, anyway, that the user has to help the computer along.
All the best,
Robert Dodier
--
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group
.
FTR I'm working with Maxima 5.27 + patches (from Git).
HTH
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com
. Sorry I can't
be more helpful.
best,
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sage-support
URL
, if that makes sense - is that possible, Robert?
It seems plausible, but I don't know the integration code very well.
best
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
. u, as a
point of departure.
best,
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sage-support
URL
ticket 7557
and any similar items with the most recent version
of Maxima (5.23).
HTH
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group
is interested, maybe you can bring it up on the Maxima
mailing list.
best
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at
http
that this is something one can (yet) do directly in
Sage. It might be possible in Maxima directly, if one can define
custom derivatives there.
The Maxima function gradef defines derivatives.
HTH
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group
it. It is undocumented, but you can ask about on the mailing
list.
Sorry I can't be more helpful.
best
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group
distributions? I wouldn't know where to start with
that. So provisionally the answer is yes, given a few pointers.
Please bring it up on the Maxima mailing list.
See: http://maxima.sourceforge.net/maximalist.html
best
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
formulate one easily enough
to just compute integrate(f(u)*g(x - u), u, minf, inf) or
whatever definition. I don't know whether a direct
approach like that is preferable, or if it's better to compute
the convolution via Fourier or Laplace transforms or some
other way.
FWIW
Robert Dodier
expressions to numbers (e.g. plotting, quadpack).
Follow-ups to the Maxima mailing list. I've appended
the original message below.
best
Robert Dodier
PS.
On Apr 19, 8:38 am, jvkersch joris.vankerscha...@gmail.com wrote:
Technically, this is not a Sage problem, but I figured I would post it
here
it
would be easier to do this stuff in Maxima -- just launch Maxima
and then load your own code (since Maxima is written in Lisp).
It's easy to call Maxima functions directly from your code.
What are the functions you are looking for?
FWIW
Robert Dodier
--
To post to this group, send email
the Taylor series.
FWIW
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sage-support
URL: http
is in there but you might get some
inspiration.
good luck
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sage
towards solving the
problem which started this thread.
(As opposed to revising or reimplementing the code
for definite integration.)
FWIW
Robert Dodier
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support+unsubscr
be surprised if a
lot
of ink has been spilled about this problem but I am pretty naive.)
If anyone has an opinion about it I would be interested to hear it.
FWIW
Robert Dodier
(a Maxima developer)
--
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send
, time memory can increase
much faster than one might expect.
(2) Maxima may be able to apply different algorithms to
compute determinants, I don't remember for sure.
You might ask on the mailing list (max...@math.utexas.edu).
Sorry I can't be more helpful.
Robert Dodier
.
FWIW
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group
the appropriate article.
Sorry for garbling up all of linguistics here. I'm sure there are
others who can do a better job.
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email
(ext:set-limit 'ext:heap-size whatever)
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support-unsubscr...@googlegroups.com
For more options, visit this group
ask what is the purpose of solving this problem?
I am always interested to hear what people are working on.
HTH
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage
, looks like you have SBCL in
the stand-alone Maxima. You could call build_info(); to
get the Lisp name for the one in Sage.
Without looking it up, I don't know how to set the memory
limit in SBCL.
Thanks for the info about your problem, it sounds very interesting.
best
Robert Dodier
but I'm
too lazy to try to compute it myself.)
Does the computation succeed with some simpler version of func?
As a wild guess in the absence of information, it is possible that
intermediate results in the integration are very large expressions.
Robert Dodier
for which
it breaks seems to vary on different machines.
Yes, well, so what is a value of func for which the operation fails?
I don't have Sage installed so I can't run your code.
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support
a little confused
about lists --- there is no distinction between lists and sets, and
a matrix is just a list of lists. That's a mess, which Sage shouldn't
duplicate. But arithmetic on lists isn't confusing.
FWIW
Robert Dodier
--~--~-~--~~~---~--~~
To post
or whatever is just a workaround for
the lack of symbolic operations.
best
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support-unsubscr...@googlegroups.com
for annotating units
and for unit conversions, and some interesting random
features; I like this one:
1 ` m `` [mile, yard, foot, inch];
= [6 ` mile, 376 ` yard, 0 ` foot, 608/127 ` inch]
Maybe ezunits can a source of some inspiration.
FWIW
Robert Dodier
and other variations doesn't seem to yield anything immediately
applicable. Links or other refs would be much appreciated.
best
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send
) solve ((z^3 - 1)^3 = 0, z);
(%o5) [z = (sqrt(3)*%i-1)/2,z = -(sqrt(3)*%i+1)/2,z = 1]
(%i6) multiplicities;
(%o6) [3,3,3]
FWIW
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send
] could be any of several things ---
could be a list element, a matrix row, an array element, a
hash table element, as well as a subscripted variable.
This multitude of interpretations of x[foo] can lead to confusion.
FWIW
Robert Dodier
--~--~-~--~~~---~--~~
To post
error:
*: floating point overflow
Try working with either rationals or bigfloats, which are limited
only by available memory. (I don't know how Python types map
onto Maxima's big integers and bigfloats, sorry.)
FWIW
Robert Dodier
--~--~-~--~~~---~--~~
To post
as e^foo ... OK.
b=((g+u)-c_0*exp^(-g*L))/c_0*exp^(-g*L)
Written as exp^foo ... I'm guessing that's incorrect.
Looks like Sage is carrying exp^foo through to the results.
[g == (6 - 5*exp^g)/(60*exp^g)] , etc.
HTH
Robert Dodier
ma...@mendelu.cz wrote:
You can use commands orderless and ordergreat in Maxima to change the
default behavior.
For the record, I recommend against that; it's not really the right
way to resolve this problem. I'll post another message with a
different resolution.
Robert Dodier
expansion order?
Well, you can get the addends via the args function in Maxima;
e.g. powerdisp:true; foo:expand(whatever); args(foo); = some list.
Likewise you can get the multiplicands of each term from args.
I don't know how to get that through Sage.
FWIW
Robert Dodier
precision.
What does :lisp *read-default-float-format* report?
Thanks for your help,
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support-unsubscr
.
For the record, . is the noncommutative product operator in Maxima
(while * is commutative). Dunno if it matters, hope this helps.
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from
bytes.
Unfortunately the Common Lisp spec, while it recognizes the
existence of character encoding issues, doesn't specify what to do
when a byte can't be decoded to a character. Other Lisp
implementations
probably have their own ways to handle it.
FWIW
Robert Dodier
On Mar 6, 8:56 am, William Stein wst...@gmail.com wrote:
That said -- I'm really looking forward to Sage switching to Maxima + ECL.
I;'m pretty sure ECL will exhibit some variation on Clisp's behavior,
for better or worse.
Robert Dodier
a review
of the all the junk in maxima/share, to sort out the stuff that
can be merged into the core, or needs clean up, or should be axed.
Feel free to bother me about it if you don't hear anything.
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email
+ sqrt(x + 7), [x]);
= [[x = 42]]
HTH
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support-unsubscr...@googlegroups.com
For more options, visit this group
know the full extent of the wonders
wrought by domain:complex.
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support-unsubscr...@googlegroups.com
For more
for modify solve to call to_poly_solve, then
I'll
encourage you to take it up on the Maxima mailing list.
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support
in the not-too-distant future, the built-in
solver would call to_poly_solve automatically
HTH
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to
sage-support-unsubscr
to compute limits,
could you please report this to the Maxima bug tracker and/or mailing
list.
http://sourceforge.net/projects/maxima/bugs
http://maxima.sourceforge.net/maximalist.html
Same behavior in a recent Maxima build from CVS, ftr.
best
Robert Dodier
on the numer flag for Maxima.
numer causes any literal numbers or symbolic constants
to be replaced by floating point values. However the integrate
function is called as without numer. If you want a numerical
integration, call quad_qags or some other Quadpack function.
FWIW
Robert Dodier
On 11/19/08, Mike Hansen [EMAIL PROTECTED] wrote:
Yep, these are coming from Maxima:
(%i11) integrate(x*abs(9-x^2), x, -6, 0);
(%o11) 162
(%i12) integrate(x*abs(9-x^2), x, -6, -3);
(%o12) -729/4
(%i13) integrate(x*abs(9-x^2), x, -3, 0);
(%o13) -81/4
I've CC'd Robert Dodier
, but I guess nusum is not
consulted by simplify_sum before the latter gives up.
I didn't look into it carefully.
best
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email
infinity, infinity
=
complex infinity.
best
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http
Robert Bradshaw wrote:
On Aug 30, 2008, at 4:46 PM, Robert Dodier wrote:
From the direction this discussion has taken I'm guessing that
nobody here is aware that selective evaluation is trivial in Lisp,
and Maxima. In both cases a single quote marks stuff that
isn't evaluated.
I
not distinguished from lists
* lack of syntax in programming constructs
There's really nothing to recommend any of this.
FWIW
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email
Robert Bradshaw wrote:
On Fri, 29 Aug 2008, Jason Grout wrote:
Jason Merrill wrote:
The Mathematica syntax is Hold[Integral[x,{x,0,1}]]. This remains
unevaluated until it is wrapped with an Evaluate[]. The nice thing
about this syntax is that it works for any kind of expression (not
since that will
make it easier to port to Lisp.
By the way, Maxima has an add-on package named solver
which seems to be somewhat stronger than built-in solve.
See: maxima/share/algebra/solver
best
Robert Dodier
--~--~-~--~~~---~--~~
To post to this group, send email
5.14.0 and later. Sorry for the bother.
LSH was a nonstandard function, replaced by ASH (arithmetic shift).
Common Lisp was introduced in the 90's but there are still remnants
of pre-CL Lisp in Maxima, which we are slowly cleaning up.
FWIW
Robert Dodier
92 matches
Mail list logo