[caret-users] Palette editing

Alex Fornito fornitoa at unimelb.edu.au
Mon May 12 11:40:25 CDT 2008


Thanks John.
It seems that no matter what I do, I am unable to visualize the problem.
This makes me think something has gone wrong with the mapping, although it
seems to proceed fine when I run it.
I can overlay the volume on say, the avg152 in FSLview, and have used
exactly the same procedure that I have previoulsy in Caret to successfully
map other volumes that have a similar format (albeit with different
intensity ranges).
Can you recommend a way of troubleshooting this problem?
Thanks,
Alex


On 12/05/2008 14:28, "John Harwell" <john at brainvis.wustl.edu> wrote:

> 
> Alex,
> 
> On one of Display Control's Metric pages is a group of options named
> "Color Mapping".  Its default value is "Auto Scale" in which the most
> positive metric value is mapped to +1 in the palette, the zero metric
> is mapped to zero in the palette, and the most negative metric is
> mapped to -1 in the palette.  If your data truly ranges from ranges
> from zero to 300, you could stick with auto scale.  If not, change the
> "Color Mapping" to "User Scale" and set the "Pos Min/Max" values to
> 0.0 and 300.0.  If you palette has red at 0.33, orange at 0.66, and
> yellow at 1.0, metric values of 0 to 100 are assigned red, metric
> values of 100 to 200 are assigned orange, and metric values of 200 to
> 300 are assigned yellow.
> 
> Also see 
> "http://brainvis.wustl.edu/CaretHelpAccount/caret5_help/dialogs/display_contro
> l_dialog.html#MetricSettingsPage
> ".
> 
> John
> 
> On May 12, 2008, at 4:33 AM, Alex Fornito wrote:
> 
>> Hi again,
>> As a second step, I would like to map  a volume onto the PALS
>> surface in
>> which each voxel in the volume is assigned a value between 0 and
>> 300. I
>> would like to visualise it as some sort of heatmap, such that lower
>> values
>> are red, gradually moving through orange and yellow to represent
>> higher
>> values.
>> 
>> I have tried editing the palettes through the GUI, but it seems the
>> values
>> assigned to colours must be between -1 and +1. Is there any way to
>> create
>> palettes for arbitrary scales, or another way to visualize the image
>> as
>> decsribed above?
>> 
>> Thanks again for your help,
>> Alex
>> 
>> 
>> On 09/05/2008 22:18, "Donna Dierker" <donna at brainvis.wustl.edu> wrote:
>> 
>>> Hi Alex,
>>> 
>>> You are missing something:  The all important Attributes: Paint:
>>> Generate Colors for paints without colors.  I want to say you must
>>> have
>>> it, but that's overstating it just a bit.  It's well worth
>>> downloading
>>> the latest snapshot here:
>>> 
>>> http://brainvis.wustl.edu/pub/caret/
>>> login pub
>>> password download
>>> 
>>> If you'd really rather not, the you can still map the ROI as paint,
>>> and
>>> then save the resulting paint file; convert it to ASCII using the
>>> endangered File: Convert data file formats option; and then use a
>>> text
>>> editor to extract the paint names from it.  Then, manually create an
>>> area color file to map the paint names to RGB colors:
>>> 
>>> http://brainmap.wustl.edu/caret/caret_help/file_formats/file_formats.html#ar
>>> ea
>>> Color
>>> 
>>> I'm puzzled over two things in your message:
>>> 
>>>    * The 12 PALS subjects' paint columns makes sense only if you have
>>> loaded an existing PALS paint file such as
>>> Human.PALS_B12.IDsulci_B1-12_RIGHT.clean.73730.atlas.paint, but even
>>> then, after mapping your ROI paint volume, you should have a 13th (or
>>> more) column for what you just mapped.
>>> 
>>>    * The Edit paint names should show more than one name, if you
>>> mapped
>>> a ROI volume with more than one intensity.
>>> 
>>> I have detailed all the steps in what I did, in hopes that you can
>>> pinpoint the problem on your end (after upgrading to the latest
>>> snapshot):
>>> 
>>> Download the CARET_TUTORIAL_SEPT06.zip dataset:
>>> 
>>> http://sumsdb.wustl.edu/sums/directory.do?id=6585200
>>> 
>>> Extract the zip file and cd CARET_TUTORIAL_SEPT06 directory.
>>> 
>>> Launch caret and select PALS_B12.RIGHT.DEMO.73730.spec.
>>> 
>>> Load scenes and double-click scene 13.
>>> 
>>> File: view current files
>>>    Click X to clear the loaded paint file
>>> Note: I think your 12 loaded paint columns may have been preloaded
>>> from
>>> an existing PALS paint file.
>>>    Click X to clear both loaded average fiducial coord files
>>> Note: These are the wrong space; we need the AFNI coord here.
>>> Yours may
>>> vary.
>>> 
>>> Toolbar: Spec: Open
>>> Human.PALS_B12.RIGHT_AVG_B1-12.FIDUCIAL_AFNI.clean.73730.coord
>>> 
>>> Attributes: Map volume to surface
>>>    Paint ROI or probabilistic atlas data
>>>    Add volumes from disk: TTatlas.nii
>>>    Map to Caret
>>>    select Human.PALS_B12.RIGHT_AVG_B1-12.FIDUCIAL_AFNI.clean.
>>> 73730.coord
>>>    accept remaining defaults
>>> 
>>> Attributes: Paint: Edit paint names, if desired
>>> 
>>> Attributes: Paint: Generate colors for paints with no colors
>>> 
>>> D/C: Overlay/Underlay: Surface
>>>    Primary overlay Paint
>>>    Select desired display column
>>> D/C: Paint Main
>>>    Display Color key
>>> 
>>> File: Save Data File: Paint
>>> File: Save Data File: Area Color File
>>> 
>>> Donna
>>> PS I assume you will attend OHBM2008, right?  John and David will
>>> be there.
>>> 
>>> On 05/09/2008 02:25 PM, Alex Fornito wrote:
>>>> Sorry, I can't seem to follow.
>>>> 
>>>> I map the volume to the PALS surface as a Paint ROI. I then get 12
>>>> options
>>>> in the paint D/C dialog, corresponding to a mapping to the 12
>>>> cases in the
>>>> PALS atlas. Is it possible to obtain one, as per the AFM option?
>>>> 
>>>> If I go to Attributes > Paint > Edit paint names, all I have is an
>>>> option to
>>>> change one name.
>>>> 
>>>> After I change the name, there is no option under Attributes >
>>>> Paint that
>>>> corresponds to Generate colours for paint colours without colours.
>>>> The
>>>> options I have under Attributes > Paint are:
>>>> 
>>>> Assign nodes within displayed borders.
>>>> Cleanup paint names.
>>>> Clear all or part of paint file.
>>>> Convert pain column to paint volume.
>>>> Edit paint names.
>>>> 
>>>> Am I missing something?
>>>> I'm sing version Caret 5.51
>>>> 
>>>> Thanks again,
>>>> Alex
>>>> 
>>>> On 09/05/2008 17:57, "Donna Dierker" <donna at brainvis.wustl.edu>
>>>> wrote:
>>>> 
>>>> 
>>>>> Hi Alex,
>>>>> 
>>>>> Cool!  John has added some features that make this a little easier.
>>>>> 
>>>>> Go ahead and map your volume as ROI paint.  If mapping to atlas
>>>>> doesn't
>>>>> give you the options you'd like, simply start with a spec file
>>>>> that has
>>>>> the PALS average fiducial surfaces in it, and map to Caret while
>>>>> the
>>>>> average fiducial surface is loaded.
>>>>> 
>>>>> Then you won't be able to see the paint overlay yet, because no
>>>>> color is
>>>>> associated with the automatically assigned paint name.  First, do
>>>>> Attributes: Paint: Edit Paint Names and properties to update the
>>>>> paint
>>>>> names to something more meaningful.  Then, do Attributes: Paint:
>>>>> Generate colors for paint without colors.  Save both the paint
>>>>> and area
>>>>> color files:  The  paint assigns nodes to paint names; the area
>>>>> color
>>>>> maps paint names to RGB colors.  If you change the name of the
>>>>> paint,
>>>>> change it in both.  If you want to do this with perl, sed, or awk,
>>>>> convert the paint file to ASCII first (using either File: Convert
>>>>> data
>>>>> file formats or the caret_command utility).
>>>>> 
>>>>> Make sure D/C overlay/underlay surface has paint as overlay, and
>>>>> I like
>>>>> D/C: Paint Main : Display Color key.
>>>>> 
>>>>> A capture of the mapped TTatlas is attached.
>>>>> 
>>>>> Donna
>>>>> 
>>>>> On 05/09/2008 11:33 AM, Donna Dierker wrote:
>>>>> 
>>>>>> Hi Alex,
>>>>>> 
>>>>>> Would you mind uploading your ROI volume
>>>>>> (http://pulvinar.wustl.edu/cgi-bin/upload.cgi)?  It has been
>>>>>> quite a
>>>>>> while since I've done this, and I know the gotchas are in this
>>>>>> case
>>>>>> more case/data dependent than most (e.g., life will be easier if
>>>>>> your
>>>>>> intensities increment like 1, 2, 3, rather than 5, 10, 15).
>>>>>> Next best
>>>>>> thing is a histogram of the values.
>>>>>> 
>>>>>> Meanwhile, I'll dig TTatlas out of my AFNI distribution, so I
>>>>>> can try
>>>>>> mapping it.
>>>>>> 
>>>>>> Donna
>>>>>> 
>>>>>> On 05/09/2008 11:26 AM, Alex Fornito wrote:
>>>>>> 
>>>>>>> Hi Donna,
>>>>>>> You're right, I am trying to overlay something like the AAL,
>>>>>>> where each
>>>>>>> 'intensity' in the region corresponds to a different ROI.
>>>>>>> 
>>>>>>> I would like to load it into Caret so that each ROI gets a
>>>>>>> different
>>>>>>> colour.
>>>>>>> It sounds like I should indeed load it as a paint rather than
>>>>>>> metric
>>>>>>> file,
>>>>>>> although when I go to Attributes > Map Volume to Surface and
>>>>>>> load as
>>>>>>> Paint
>>>>>>> (ROI) or probabistic data, I get 12 options in the paint
>>>>>>> selection
>>>>>>> area in
>>>>>>> the D/C, corresponding to the mapping for each of the cases in
>>>>>>> the PALS.
>>>>>>> When I try to visualize any of them, I can't see anything.
>>>>>>> 
>>>>>>> I would just like the AFM mapping, but there does not seem to
>>>>>>> be an
>>>>>>> option
>>>>>>> for selecting this with Paint, as their is with metric. In the
>>>>>>> summary
>>>>>>> before proceeding with the mapping however, it does state that
>>>>>>> AFM
>>>>>>> will be
>>>>>>> performed.
>>>>>>> Am I missing something?
>>>>>>> 
>>>>>>> 
>>>>>>> On 09/05/2008 14:47, "Donna Dierker" <donna at brainvis.wustl.edu>
>>>>>>> wrote:
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>> Hi Alex,
>>>>>>>> 
>>>>>>>> What you describe is more like what we call a ROI paint
>>>>>>>> volume, like
>>>>>>>> the
>>>>>>>> AAL map shown here:
>>>>>>>> 
>>>>>>>> http://http://www.sph.sc.edu/comd/rorden/template.htmlwww.sph.sc.edu/co
>>>>>>>> md
>>>>>>>> /r
>>>>>>>> ord
>>>>>>>> 
>>>>>>>> en/template.html
>>>>>>>> 
>>>>>>>> When you map in Caret, you have the option of mapping
>>>>>>>> functional as
>>>>>>>> metric, or Paint (ROI); you want the latter.
>>>>>>>> 
>>>>>>>> The tricky bit is that NIfTI (to my imperfect knowledge)
>>>>>>>> doesn't yet
>>>>>>>> support incoding of ROI lookup tables.  (John will correct me
>>>>>>>> if I'm
>>>>>>>> wrong.)  The only two ways I know to do this, using Caret, are
>>>>>>>> with
>>>>>>>> WUNIL 4dfp ifh files, or with AFNI volumes, using a VElab
>>>>>>>> (non-standard)
>>>>>>>> LUT tag in the HEAD file.  An example of the latter is in the
>>>>>>>> Sept 2006
>>>>>>>> tutorial dataset http://sumsdb.wustl.edu/sums/directory.do?id=6585200)
>>>>>>>> :
>>>>>>>> 
>>>>>>>> CARET_TUTORIAL_SEPT06/PALS_B12.B1-12.BOTH-HEMS.PROB-
>>>>>>>> ATLAS_IDsulci.paint.a
>>>>>>>> li
>>>>>>>> gn_
>>>>>>>> 
>>>>>>>> 222+orig.HEAD
>>>>>>>> 
>>>>>>>> type  = string-attribute
>>>>>>>> name  = LUT_NAMES
>>>>>>>> count  = 423
>>>>>>>> '???~??? 
>>>>>>>> _not_used 
>>>>>>>> ~GYRAL~SUL.STS~SUL.AS~SUL.SF~SUL.ITS~SUL.PoCeS~SUL.PoSub
>>>>>>>> Ce
>>>>>>>> S~S
>>>>>>>> 
>>>>>>>> UL.CeS~SUL.I
>>>>>>>> PrCeS 
>>>>>>>> ~ 
>>>>>>>> SUL 
>>>>>>>> .pITS~SUL~SUL.IFS~SUL.IPS~SUL.AOS~SUL.OTS~CENTRAL~SUL.intFS~SUL.
>>>>>>>> SP
>>>>>>>> rCe
>>>>>>>> 
>>>>>>>> S~SUL.FOS~SU
>>>>>>>> L 
>>>>>>>> .MFS 
>>>>>>>> ~ 
>>>>>>>> SUL 
>>>>>>>> .TOrbS~SUL.LOS~SUL.FMS~SUL.SFS~SUL.CoS~SUL.TOS~SUL.SupPS~SUL.RhS
>>>>>>>> ~C
>>>>>>>> ALC
>>>>>>>> 
>>>>>>>> ARINE~MEDIAL
>>>>>>>> .WALL 
>>>>>>>> ~ 
>>>>>>>> SUL 
>>>>>>>> .CaSd~SUL.OrbS~SUL.HF~SUL.CaSv~SUL.POS~SUL.CiSmr~SUL.CiS~SUL.SSS
>>>>>>>> ~S
>>>>>>>> UL.
>>>>>>>> 
>>>>>>>> SubPS~SUL.Ol
>>>>>>>> fS~SUL.ILS~SUL.SRS~SUL.ISS~SUL.MPrCeS~SUL.PaCeS~SUL.IRS~SUL.LuS~
>>>>>>>> 
>>>>>>>> Here, the ordinal position of the ROI/paint name corresponds
>>>>>>>> to the
>>>>>>>> intensity value in the volume.
>>>>>>>> 
>>>>>>>> You then map these paint names to RGB colors using an ordinary
>>>>>>>> Caret
>>>>>>>> area color file.
>>>>>>>> 
>>>>>>>> Donna
>>>>>>>> 
>>>>>>>> On 05/08/2008 10:44 AM, Alex Fornito wrote:
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> Hi,
>>>>>>>>> Thanks for the feedback, although I need it to overlay a
>>>>>>>>> volume on the
>>>>>>>>> surface. I essentially have a volume-based template
>>>>>>>>> comprising several
>>>>>>>>> thousand ROIs, with each ROI being assigned a distinct
>>>>>>>>> 'intensity'.
>>>>>>>>> I have
>>>>>>>>> imported the volume-based template into Caret as a metric
>>>>>>>>> file, and
>>>>>>>>> would
>>>>>>>>> like to be able to visualize it such that each volume
>>>>>>>>> 'intensity'
>>>>>>>>> (corresponding to a different ROI) is a different colour.
>>>>>>>>> I imagine the appearance would be much like the image you
>>>>>>>>> sent, but
>>>>>>>>> somewhat
>>>>>>>>> coarser, since its not a nodal resolution.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> From what I understand, a paint file can't be used to colour
>>>>>>>>>> code
>>>>>>>>>> a metric
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> file?
>>>>>>>>> Is there another way of achieving my goal that I'm unaware of?
>>>>>>>>> 
>>>>>>>>> Thanks again,
>>>>>>>>> Alex
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On 06/05/2008 15:13, "John Harwell" <john at brainvis.wustl.edu>
>>>>>>>>> wrote:
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> Alex,
>>>>>>>>>> 
>>>>>>>>>> If you generated a palette file with that many colors I
>>>>>>>>>> think it
>>>>>>>>>> would
>>>>>>>>>> be slow to load and slot to make the color assignments.  A
>>>>>>>>>> better
>>>>>>>>>> alternative is to use this python script to generate an RGB
>>>>>>>>>> paint
>>>>>>>>>> file
>>>>>>>>>> containing random colors.  You will need to adjust the
>>>>>>>>>> "numberOfNodes"
>>>>>>>>>> variable in the script to match your dataset.
>>>>>>>>>> 
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> ---
>>>>>>>>>> 
>>>>>>>>>> -- 
>>>>>>>>>> ----------------------------
>>>>>>>>>> 
>>>>>>>>>> #!/usr/bin/python
>>>>>>>>>> #
>>>>>>>>>> # Create an RGB paint file with random colors
>>>>>>>>>> #
>>>>>>>>>> import os
>>>>>>>>>> import random
>>>>>>>>>> import sys
>>>>>>>>>> 
>>>>>>>>>> #
>>>>>>>>>> # Name of RGB Paint file and number of nodes in the file
>>>>>>>>>> #
>>>>>>>>>> rgbPaintFileName = "random.RGB_paint"
>>>>>>>>>> numberOfNodes    = 71723
>>>>>>>>>> 
>>>>>>>>>> #
>>>>>>>>>> # Create an RGB paint file with random colors
>>>>>>>>>> #
>>>>>>>>>> file = open(rgbPaintFileName, 'w')
>>>>>>>>>> file.write("tag-version " + str(2) + "\n")
>>>>>>>>>> file.write("tag-number-of-nodes " + str(numberOfNodes) + "\n")
>>>>>>>>>> file.write("tag-number-of-columns  " + str(1) + "\n")
>>>>>>>>>> file.write("tag-BEGIN-DATA\n");
>>>>>>>>>> for i in range(numberOfNodes):
>>>>>>>>>>    node  = str(i)
>>>>>>>>>>    red   = str(random.random() * 255.0)
>>>>>>>>>>    green = str(random.random() * 255.0)
>>>>>>>>>>    blue  = str(random.random() * 255.0)
>>>>>>>>>>    line = node + " " + red + " " + green + " " + blue + "\n"
>>>>>>>>>>    file.write(line)
>>>>>>>>>> 
>>>>>>>>>> file.close()
>>>>>>>>>> 
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>> --
>>>>>>>>>> --
>>>>>>>>>> ---
>>>>>>>>>> 
>>>>>>>>>> -- 
>>>>>>>>>> ----------------------------
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> -----------------------------------
>>>>>>>>>> John Harwell
>>>>>>>>>> john at brainvis.wustl.edu
>>>>>>>>>> 
>>>>>>>>>> Department of Anatomy and Neurobiology
>>>>>>>>>> Washington University School of Medicine
>>>>>>>>>> 660 S. Euclid Ave   Box 8108
>>>>>>>>>> Saint Louis, MO 63110
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> On May 6, 2008, at 4:46 AM, Alex Fornito wrote:
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>> Hi,
>>>>>>>>>>> I need to generate a custom palette for viewing some masks.
>>>>>>>>>>> I need
>>>>>>>>>>> it to
>>>>>>>>>>> contain 5000-10000 colours, in no particular order or
>>>>>>>>>>> pattern. I.e.,
>>>>>>>>>>> they
>>>>>>>>>>> can be random, they just need to provide some kind of visual
>>>>>>>>>>> distinction
>>>>>>>>>>> between 5000-10000 points on the cortical surface. I can
>>>>>>>>>>> see how to
>>>>>>>>>>> manually
>>>>>>>>>>> edit palettes, but it does not seem feasible to repeat the
>>>>>>>>>>> process
>>>>>>>>>>> 1000s of
>>>>>>>>>>> times. Is there a simple way to generate a palette with
>>>>>>>>>>> several
>>>>>>>>>>> 1000s of
>>>>>>>>>>> random colours so that it can be used in Caret?
>>>>>>>>>>> Thanks for your help,
>>>>>>>>>>> Alex
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> caret-users mailing list
>>>>>>>>>>> caret-users at brainvis.wustl.edu
>>>>>>>>>>> http://brainvis.wustl.edu/mailman/listinfo/caret-users
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>> _______________________________________________
>>>>>>>>>> caret-users mailing list
>>>>>>>>>> caret-users at brainvis.wustl.edu
>>>>>>>>>> http://brainvis.wustl.edu/mailman/listinfo/caret-users
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> caret-users mailing list
>>>>>>>> caret-users at brainvis.wustl.edu
>>>>>>>> http://brainvis.wustl.edu/mailman/listinfo/caret-users
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> _______________________________________________
>>>>> caret-users mailing list
>>>>> caret-users at brainvis.wustl.edu
>>>>> http://brainvis.wustl.edu/mailman/listinfo/caret-users
>>>>> 
>>>> 
>>>> 
>>> 
>>> _______________________________________________
>>> caret-users mailing list
>>> caret-users at brainvis.wustl.edu
>>> http://brainvis.wustl.edu/mailman/listinfo/caret-users
>> 
>> -- 
>> 
>> Alex Fornito
>> CJ Martin Post-Doctoral Fellow
>> Brain Mapping Unit
>> Department of Psychiatry
>> University of Cambridge
>> Addenbrooke¹s Hospital
>> Hills Rd, Cambridge
>> UK CB2 2QQ
>> 
>> Email:    af397 at cam.ac.uk
>> Phone:    +44 (0) 1223 336587
>> Fax:        +44 (0) 1223 336581
>> 
>> Australian Details:
>> 
>> Melbourne Neuropsychiatry Centre
>> National Neuroscience Facility
>> Levels 1 & 2, Alan Gilbert Building
>> 161 Barry St
>> Carlton South 3053
>> Victoria, Australia
>> 
>> Email:    fornitoa at unimelb.edu.au
>> Phone:    +61 3 8344 1861
>> Fax:        +61 3 9348 0469
>> 
>> 
>> 
>> _______________________________________________
>> caret-users mailing list
>> caret-users at brainvis.wustl.edu
>> http://brainvis.wustl.edu/mailman/listinfo/caret-users
>> 
> 
> 
> _______________________________________________
> caret-users mailing list
> caret-users at brainvis.wustl.edu
> http://brainvis.wustl.edu/mailman/listinfo/caret-users

-- 

Alex Fornito
CJ Martin Post-Doctoral Fellow
Brain Mapping Unit
Department of Psychiatry
University of Cambridge
Addenbrooke¹s Hospital
Hills Rd, Cambridge
UK CB2 2QQ

Email:    af397 at cam.ac.uk
Phone:    +44 (0) 1223 336587
Fax:        +44 (0) 1223 336581

Australian Details:

Melbourne Neuropsychiatry Centre
National Neuroscience Facility
Levels 1 & 2, Alan Gilbert Building
161 Barry St 
Carlton South 3053
Victoria, Australia

Email:    fornitoa at unimelb.edu.au
Phone:    +61 3 8344 1861
Fax:        +61 3 9348 0469






More information about the caret-users mailing list