pdated the
website yet. ;) But Windows installers for 2.4 are available on
Sourceforge...
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
of) what I *do* find (Win2K):
>>> for key, val in os.environ.items():
... print '%15s %s' % (key, val)
...
TMP C:\DOCUME~1\Jeff\LOCALS~1\Temp
USERNAME jeff
COMPUTERNAME ##
LOGONSERVER ##
COMSPEC C:\WINNT\system32\cmd.exe
Simon Brunning wrote:
On Wed, 15 Dec 2004 18:10:40 -0800, Jeff Shannon <[EMAIL PROTECTED]> wrote:
The difference being that when Excel opens up a *.CSV, it goes through
the import wizard.
Are you sure that's true? When I open a *.csv file, Excel *appears* to
open it without
Peter Hansen wrote:
P.S.: I'm only half Danish, but the other half is from
a particularly bloodthirsty line of Canadians.
I thought it was physically impossible for Canadians to be bloodthirsty
outside of hockey games... ;)
Jeff Shannon
Technician/Programmer
Credit International
--
t some of the time (by postulating, for example, that if one
mutates a dict key then things will break), this will result in more
bugs and more confusion over time. There is no way for Python to be
able to behave consistently in the face of mutable dict keys, therefore
("In the face of ambigu
Antoon Pardon wrote:
Op 2004-12-16, Jeff Shannon schreef <[EMAIL PROTECTED]>:
nevermind the fact that I can't think of a case where I'm
likely to "retrieve" a key from a dict, modify it, and then put it
back. (I can think of endless cases where I'd want to
re only as a matter of backward compatibility.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
Antoon Pardon wrote:
Op 2004-12-17, Jeff Shannon schreef <[EMAIL PROTECTED]>:
(And I have to reiterate, here, that I have *never* felt it a hardship
to be unable to use lists as dictionary keys; it's just never come up
that the data that I had in a list was something that I wanted
Antoon Pardon wrote:
Op 2004-12-17, Jeff Shannon schreef <[EMAIL PROTECTED]>:
To take another approach -- given some function that allows lists to
(pretend to be) hashable:
.>>> key = [1,2]
.>>> d[key] = 'foo'
.>>> d[[1,2]]
.>>> key.a
n lambdas is a direct consequence of the fact
that a function def is an executable statement rather than a
compilation-time declaration.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
Mike Meyer wrote:
Jeff Shannon <[EMAIL PROTECTED]> writes:
Additionally, as I understand it UserList and UserDict are implemented
entirely in Python, which means that there can be significant
performance differences as well.
Actually, UserList and UserDict are just wrappers arou
Roy Smith wrote:
Jeff Shannon <[EMAIL PROTECTED]> wrote:
The aesthetic purity I'm referring to is that Python respects the proper
meaning of hashing, even if it doesn't force the programmer to. The
builtin objects that Python provides don't offer a __hash__() method
t
tually a parameter to findRoot(). I
suppose that opinions may vary, however.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
Steven Bethard wrote:
Jeff Shannon wrote:
It occurs to me that, in a statically compiled language, function
definitions all happen before the program starts, and thus that
definition can't be affected by other variables (i.e. an outer
function's parameters).
I think you might be
Jp Calderone wrote:
On Fri, 17 Dec 2004 11:21:25 -0800, Jeff Shannon <[EMAIL PROTECTED]> wrote:
No -- the mathematical definition of 'hashable' fails for mutable types,
and Python doesn't try to pretend that it can hash mutable types.
Python also provides features
from
.ini-style files and/or the Windows Registry.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
may be able to store your data in a shelve, or
even proper database, saving you lots of time in parsing through these
files on each run. Even if it's entirely new data on each run, you may
be able to find a more efficient way of transferring data from whatever
the source is into yo
g gets done correctly, since you won't
have the option of setting the formatting explicitly during import. (I
frequently deal with numbers that have significant leading zeros, and
Excel just loves to strip those off unless you set formatting to 'text'...)
Jeff Shannon
Te
were copied when added
to a dict, just so that every once in a while someone might be able to
avoid a few conversions to/from tuple, then you're adding the overhead
of an object copy to *every* dict insertion, thus slowing down (possibly
by a significant amount) a large proportion of Py
rectory
to add to sys.path. Thus, if you drop a mymodule.pth file in
site-packages, which contains a list of the directories you're
interested in, sys.path will automatically be amended for you every time
Python starts.
Jeff Shannon
Technician/Programmer
Credit International
--
http:/
memory used up to 3
gigs.
Finally, the speed of some operations (l.index(item), l.pop(0),
l.insert(0, item)) are related linearly to the size of the list, so your
program may slow down as the lists it manipulates grow. Others, such as
l[i], l.pop(), and l.append(item), are constant-time
-
correct = 0
import sys, os
sys.stdout.write('hello')
if correct: sys.stdout.flush()
if os.fork() == 0: sys.stdout.write('\n')
----
Jeff
pgpDFwCkshuhD.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
possible to behave
sensibly. So prove us wrong, by implementing something that behaves
sensibly in the face of mutating keys (which compare by value, as lists
do, rather than by identity).
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
Antoon Pardon wrote:
Op 2004-12-17, Jeff Shannon schreef <[EMAIL PROTECTED]>:
Now, even if hash were made to equal id... suppose I then pass that dict
to a function, and I want to get the value that I've stored under
[1,2]. In order to do that, I'd *also* have to pass in
re was what wouldn't work
consistently; the corrected version, using list() and reverse(), doesn't
look like it has anything that'll be a problem in my 2.2 installation,
and probably not in 2.1
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
bring you back up to the top of the loop body and the
start of the next loop iteration.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
John Machin wrote:
Subtle distinction: A metER is a measuring device. A MetRE is a unit of
distance.
... except in the US, where we stubbornly apply the same spelling to
both of those. (It figures that we Americans just ignore subtle
distinctions)
Jeff Shannon
Technician/Programmer
specification, and then write code that would pass the unit tests. If
you are subclassing from a common base, then you'd only need to change
the unit test for that common base class (presuming that all derived
classes would run those unit tests as well).
Jeff Shannon
Technic
Antoon Pardon wrote:
Op 2004-12-21, Jeff Shannon schreef <[EMAIL PROTECTED]>:
Antoon Pardon wrote:
So show us a dictionary (i.e. hash table) implementation that can do
this.
Why should I, Do you doubt that it is possible?
Yes.
You'll need to be able to derive the old ha
Antoon Pardon wrote:
Op 2004-12-21, Jeff Shannon schreef <[EMAIL PROTECTED]>:
How does the dict know which value is associated with which key?
Because there is a link between the key and the value. The problem
with a mutated key in a dictionary is not that the link between the
key a
rrent dict off of object
id, I don't see much real value in creating a separate dict type that
does it by default. But as long as it's an addition, rather than a
change to existing behavior, then the only real problem with it is the
standard "makes the language bigger".
more bother than it's worth to me.
I'm perfectly willing to "struggle" along without abstract base classes
enforcing an interface, and merely make do with unenforced, informal
protocols... but then, I'm hardly an expert in such matters. (Or any
other sort
ld be able to
avoid the circular import problem...
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
meric that are required, and
then ensure that you have (or get) an appropriate version.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
-- it doesn't happen automatically.)
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
almost identical) instances of Spam. Using
list() to create a copy of a list is analogous, but we're used to
thinking of list() as a converter rather than a constructor...
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
18 STORE_FAST 0 (y)
21 LOAD_CONST 0 (None)
24 RETURN_VALUE
>>>
Given that Python may not even have access to the .py file, only the
.pyc (which has lost all record of the source representation), there's
no way for the interpreter to do
pairs containing each of
the decoded parts of the header. Charset is None for non-encoded
parts of the header, otherwise a lower-case string containing the
name of the character set specified in the encoded string.
An email.Errors.HeaderParseError may be raised when certain
e. The file is executed in the same name space
where interactive commands are executed so that objects defined or
imported in it can be used without qualification in the
interactive session. You can also change the prompts sys.ps1 and
sys.ps2 in this file.
Jeff
pg
leep(2)
print current_text
raise SystemExit
Next, you'll want to wait for each process you started:
for current_text in texts:
os.waitpid(-1, 0)
print 'this is the end'
$ python /tmp/franz.py
this is text1
this is text 2
this is the e
copy.py", line 179, in deepcopy
raise error, \
copy.Error: un-deep-copyable object of type
In theory, one could provide a metaclass that allows copying of
instances of that metaclass. I'll leave this as an exercise to the
reader.
Jeff
pgpjJrXN93ruF.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
alphabet /
character set, but even then there's a significant weight of historical
reasons to overcome.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
e purpose
without quite as much risk of code pollution.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
27;s attempts to get
away from the tyranny of the straight line, and even with the EMP
there's certain details which turned out well, but the overall effect
is that of an overturned garbage pail.
Jeff Shannon
Technician/Programmer
Credit International
--
http://mail.python.org/mailman/listinfo/python-list
Bengt Richter wrote:
On Thu, 30 Dec 2004 15:15:51 -0800, Jeff Shannon <[EMAIL PROTECTED]> wrote:
Mimicking function-def indentation inside of another function's arglist
strikes me as an abomination just waiting to happen; in comparison, the
need to type a name twice seems trivial.
Sel
The limits of ZIP files according to the folks who make info-zip:
http://www.info-zip.org/pub/infozip/FAQ.html#limits
statistic limit
number of files65,536
uncompressed size of a single file 4 GB
compressed size of a single file 4
, when the python process exits and flushes
all its buffers).
You can use the "flush" method on file objects to "clear out" these
buffers.
Jeff
pgpJceNYE0Rop.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
Lucas Raab wrote:
Chris Maloof wrote:
Hello,
Does anyone know how I can read the ASCII text from a console window
(from another application) in WinXP? It doesn't sound like a major
operation, but although I can find the window via pywin32, I haven't
been able to do anything with it. I'd really ju
Maybe you want r'\b'. From 'pydoc sre':
\b Matches the empty string, but only at the start or end of a word.
import re
r = re.compile( r'\btest\b' )
print r.findall("testy")
print r.findall(" testy ")
print r.findall(" test ")
print r.findall("test")
pgps8PNW4uDgh.pgp
Description: PG
Antoon Pardon wrote:
Op 2005-03-18, Jeff Shannon schreef <[EMAIL PROTECTED]>:
I find it odd that you start by saying you still find them very
consistent and here state there is a slight inconsistency.
I said that the way that binding a name on a class instance always
creates an instance att
- the capture app would pass (almost) all input to the child
app and then retrieve the child app's output (and probably perform the
actual display on-screen). This won't let you capture the text of an
arbitrary window, though, and would probably be pretty fragile.
Jeff Shannon
--
http://mail.python.org/mailman/listinfo/python-list
trol-variable tuples are not so straightforward as is being
claimed.
There may be valid arguments in favor of enhancing tuple unpacking in
this way (indeed, I believe I recall a thread or two on this subject),
but it's important to consider the general consequences, not just the
single aspect of f
Peter Hansen wrote:
Jeff Shannon wrote:
Unless I'm seriously mistaken, the only way that this will be possible
is if there's a Win32 API call that will give the correct information.
This might be possible to find in the MSDN documentation, if it
exists, but I suspect that it probab
Peter Maas wrote:
Peter Hansen schrieb:
Cameron Laird wrote:
*DevSource* profiles "The State of the Scripting Universe" in
http://www.devsource.com/article2/0,1759,1778141,00.asp >.
Which, sadly, doesn't seem to work with Firefox here,
though IE shows it fine. :-(
Mozilla 1.7.3 shows it fine, too
sleep(.1)
if s.poll() is not None: break
print "polling wait done", s.returncode
s = subprocess.Popen(['sleep', '2'])
s.wait()
print "blocking wait done", s.returncode
#
Jeff
pgpq6ATZLp4Bp.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
subprocess.popen('cmd.exe /c rem') as a command
that will do nothing and terminate quickly. What happens if you run my
program with that change to the Popen line?
Jeff
pgpxqq83N7cWo.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
hm, I guess SIGALRM doesn't exist on Windows. You can run the program
without the 'signal.signal' line or the 'signal.alarm' line, and you'll
be stuck with a hung Python if subprocess.Popen exhibits the bug.
Jeff
pgp80TDX5i7qo.pgp
Description: PGP signature
--
self.returncode = GetExitCodeProcess(self._handle)
_active.remove(self)
return self.returncode
subprocess.Popen.wait = wait
to make the .wait() method call WFSO with a timeout, and then maybe you
can simply forget about the weird behavior you ran into.
Jeff
[1] htt
a different way,
which involves considering many different combinations (basically, each
'name=' could be the start of a new instance of the first parenthsized
subgroup of , or it could be part of the character class that
includes [a-zA-Z=])
You may wish to consider using other app
When running with "-tt", you can get this error.
[EMAIL PROTECTED] src]$ python -tt
Python 2.3.3 (#1, May 7 2004, 10:31:40)
[GCC 3.3.3 20040412 (Red Hat Linux 3.3.3-7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> exec "def f():\n\ta\nb"
Traceback
to know that some bitmaps in this format exist in the
directory I mentioned above. Note that the "standard X11 format" is
monochrome, so you will not be able to use color images with
"iconbitmap" on Linux. Tk doesn't support _NET_WM_ICON for setting
full-color ico
work for you (but you'll have to convert
your image manually to the format required for NET_WM_ICON)
Best of luck! Unfortunately, the code is not supported.
Jeff
pgpfvrqv1Xqtz.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
31 21:36 libpython2.4.a
-rw-rw-r-- 1 jepler jepler 1001982 Mar 31 21:36 libpython2.5.a
Between Python 2.3 and 2.4, the python.org people switched to a
different version of the Microsoft C compiler. Perhaps this is (part
of) the explanation.
Jeff
pgp0gJIvdwEj2.pgp
Description: PGP signature
--
I think you want urllib.basejoin().
>>> urllib.basejoin("http://www.example.com/test/page.html";, "otherpage.html")
'http://www.example.com/test/otherpage.html'
pgpSOZBAEHiWi.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
"official" page that discusses the syntax?
Jeff
pgpT4weDOp5pO.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
urn super(defaultdict, self).__getitem__(key)
except KeyError:
return self.setdefault(key, apply(*self._default))
I don't ever have an itch for sorted dictionaries, as far as I can
remember, and I don't immediately understand the use of
keytransformdict. Can you give an exa
s with a
slash, the specified path is resolved (see Pathname Resolution). If
PATH is unset or is set to null, the path search is
implementation-defined.
ah, if only windows was so well-defined!
Jeff
pgpcydRcHBwXk.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
27;)
return iter(f)
for line in lines(sys.stdin):
doSomethingWith(line)
Jeff
pgpisrc7TrsDv.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
On Sun, Apr 03, 2005 at 09:49:42PM -0600, Steven Bethard wrote:
> Slick. Thanks!
does isatty() actually work on windows? I'm a tiny bit surprised!
Jeff
pgp2TeZpqhdyV.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
information is available anywhere, unfortunately.
Jeff
pgpJe2gd1ST4h.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
Is there a script that causes this problem, without using mod_python or
jepp? If so, please attach it to the sourceforge bug.
http://sourceforge.net/tracker/index.php?func=detail&aid=1163563&group_id=5470&atid=105470
pgpiWdvwwFmcD.pgp
Description: PGP signature
--
http://mail.python.org/mailman
An interface to Perl already exists:
http://www.python.org/moin/PyPerl
-jjr
--
http://mail.python.org/mailman/listinfo/python-list
rder of the file is different from the native byte order,
you can byte-swap it before forming the complex FP array:
>>> t.byteswap()
>>> t
array([ 256, 512, 768, 1024], type=Int16)
Jeff
pgpFwMSqf6wiY.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
s,
however, this expression will instead generate an error message.
Jeff
pgpQOl66sECYx.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
probably something like this: (untested)
def make_ftplib_callback(f):
def callback(block): f.write(block)
return callback
img = cStringIO.StringIO()
retrbinary( "get ???", make_ftplib_callback(img))
Jeff
pgpaecaxnsqYB.pgp
Description: PGP signatur
(Admittedly I don't know anything about whether "win32all" builds under
mingw32, and it's not clear whether binary compatibility with extensions
built by microsoft compilers is an easy goal either)
http://www.mingw.org/
Jeff
pgplhycX3JBjH.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
docstring ... '''
Toplevel.__init__(self, parent)
if parent.winfo_viewable():
self.transient(parent)
...
# Thanks for being so dynamic, Python!
tkSimpleDialog.Dialog.__init__ = __init__; del __init__
Jeff
pgp4ueSCXQcCg.pgp
Description: PGP sig
ot;get the word out". Some prepackaged binaries would be nice, however.
Jeff
pgpScTLdxbgkf.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
22 (Red Hat Linux 3.2.2-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
I don't know anything about your database or its "LONG field".
Depending on the database software there could be additional problems
with embedded NULs, for instance.
Jeff
pgpRFzYLb7Oet.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
Sven,
It may be the default gtk font settings. This can be changed in the
.gtkrc file.
-jjr
--
http://mail.python.org/mailman/listinfo/python-list
e use of functions like
re.search while I would encourage use of the search method on compiled
RE objetcts, and I like examples to be given as though from interactive
sessions, complete with ">>>" and "..."), but nits can always be picked
and I'm not the gatekee
r', 'turnoff_sigfpe', 'turnon_sigfpe']
Fatal Python error: Unprotected floating point exception
Aborted
Jeff
Index: setup.py
===
RCS file: /cvsroot/python/python/dist/src/setup.py,v
retrieving revision 1.217
diff
won't use this field in Tkinter programs.
jeff
pgpCj3ZljM90R.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
org/sf/1185529
Jeff
pgpzLX8Ht47YG.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
ent always uses file.write if
isinstance(sys.stdout, file). I don't know whether this has been
reported as a bug before, or if there's a reason for the current
behavior. It may be an accidental behavior that is left over from the
days when builtin types were not subclassable.
Jeff
pgp
this usage work. Before being submitted as a patch,
a testcase should be added too. Feel free to run with this if you feel
strongly about it.
Jeff
Index: Objects/fileobject.c
===
RCS file: /cvsroot/python/python/dist/src/Objects/fileo
The ZODB (Zope's object database, which can be downloaded and installed
separately from Zope) and Durus (part of the Quixote family, I believe)
are both high quality persistent Python object stores that are used
heavily for web sites.
I've never used the ZODB outside of Zope, and haven't used Duru
Howdy,
This may not belong here, if so apologies...
I'm a python newbie, but have completed a console app that I'd like to run
under X. Reading recent postings here, wxpython seemed a reasonable choice so
under debian sid, I installed (via apt-get) the various wxpython stuff
available.:
libwx
On Sunday 24 April 2005 03:11 am, Roger Binns wrote:
> "jeff elkins" <[EMAIL PROTECTED]> wrote in message
> news:[EMAIL PROTECTED]
>
> > under debian sid, I installed (via apt-get) the various wxpython stuff
> > available.:
> >
> > libwxgtk2.4-
On Sunday 24 April 2005 02:07 am, Kartic wrote:
>
> Jeff - Could you please post your code?
>
> From what you have posted it looks like your MyFrame class does not
> inherit from wx.Frame.
>
Thanks Kartic. That test.py was from the wxpython download site.
--
http://mail.
On Sunday 24 April 2005 10:41 am, jeff elkins wrote:
> On Sunday 24 April 2005 03:11 am, Roger Binns wrote:
> > You have a mixture of different versions of wxPython in there.
> Thanks. I'll see if I can delete/reinstall and fix things.
Fixed and thanks for the clue :
you'll need a sourceforge
account to submit the patch)
Jeff
PS I did allow the Python test suite to run to completion after I wrote
that message. It didn't produce any failures or unexpected skips on my
platform.
pgppjD5SYuGFg.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
for k in query_param.keys():
assert k in permitted_keys
sql = "INSERT INTO %s (%s) values %s" % (
table, ", ".join(keys),
", ".join(["?"] * len(keys))
)
conn.execute(sql, values)
now you don't have to worry that you get the quoti
On Tue, Apr 26, 2005 at 09:59:29PM -0500, Mike Meyer wrote:
> Jeff Epler <[EMAIL PROTECTED]> writes:
>
> > items = query_param.items()
> > keys = [item[0] for item in items]
> > values = [item[1] for item in items]
>
> Is there some reason not to
ist.
The tutorial fails for me using python 2.3.5, wxpython 2.5.3.2 and Boa 0.4.0
under debian sid.
Jeff
--
http://mail.python.org/mailman/listinfo/python-list
ll find this hideous, but 3 lines of code to do
something simple seems equally bad. Thoughts? Is there a better way?
- Jeff
--
http://mail.python.org/mailman/listinfo/python-list
I don't think that Tk's menus ever use more than one column. They
certainly don't on Unix.
Jeff
pgpsVnvjgm3Qy.pgp
Description: PGP signature
--
http://mail.python.org/mailman/listinfo/python-list
(First off, sorry in advance, as I’m not sure if this is the right place to
post my inquiry).
*Consumer level eye tracking - easy activation of virtual buttons without
touchscreen*
After using Autohotkey for remapping, I soon didn't have enough keyboard
buttons to attach macros and lines of co
Looking for a script which will check connectivity of any or all of our
company URL's first thing in the morning to make sure none or our sites are
down. Any suggestions ? Thank You
--
https://mail.python.org/mailman/listinfo/python-list
So I'm using the following script to check our sites to make sure they are
all up and some of them are reporting they are "down" when, in fact, they
are actually up. These sites do not require a logon in order for the home
page to come up. Could this be due to some port being blocked internally
401 - 500 of 1056 matches
Mail list logo