Overview
In order to facilitate third-party application developers who wish to use content from and interact with
Helioviewer.org, a number of APIs have been developed,
offering access to a variety of components used by Helioviewer. All of the interfaces are accessed using HTML query
strings. The simplest APIs require only a single URI, and result in some resource being returned, e.g. a movie or
JP2 image series, or some action being performed, e.g. loading a particular "view"
into Helioviewer. Some of the API's are more complex and involve two steps. For example, in order to get a
list of solar events for a certain period of time, first a query is usually made to see which Feature Recognition
Methods (or FRMs) include events for that time period. A second query then returns a list of features/events are
fetched using a second query.
The general structure of queries is as follows:
The base URL is the same for each of the APIs (http://helioviewer.nascom.nasa.gov/api/index.php). The "action" parameter is required and specifies the specific functionality to access. In addition, other parameters may also be required depending on the specific API being accessed. The one exception to this rule is the Custom View API which is accessed from http://www.helioviewer.org/index.php and does not require an "action" to be specified. Finally, the queries may be sent using either a GET or POST request. In both cases the result is a JSON object
Custom View API:
The custom view API enables the user to load a specific set of parameters into Helioviewer: "view," here, simply means a given set of observation parameters. This is useful for dynamically loading a specific view or observation into Helioviewer using a URL.
http://helioviewer.nascom.nasa.gov/index.php?
Supported Parameters:
| date | ISO 8601 UTC Date | Date and time to display |
| imageScale | Float | Image scale in arc-seconds/pixel |
| imageLayers | 2d List | A comma-separated list of the image layers to be displayed. Each image layer should be of the form: [OBSERVATORY,INSTRUMENT,DETECTOR, MEASUREMENT,VISIBLE,OPACITY]. |
Example: http://helioviewer.nascom.nasa.gov/index.php?date=2003-10-05T00:00:00Z&imageScale=2.63&imageLayers=[SOHO,EIT,EIT,171,1,100],[SOHO,LASCO,C2,white-light,1,100]
Tiling API:
Requesting a image tile in Helioviewer.org occurs in two steps. During the first step a request is made in order to find the nearest image to the specified time. Once an image has been found, the URI associated with the image can then be used in subsequent tile requests.
-
Finding the Closest Image:
The result of this first request will include some basic information about the nearest image match available. This information can then be used to make tile requests.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=getClosestImage
Supported Parameters:
date ISO 8601 UTC Date The desired image date observatory String [Optional] Observatory instrument String [Optional] Instrument detector String [Optional] Detector measurement String [Optional] Measurement sourceId Integer [Optional] The image data source identifier.
Result:
filename String The filename of the matched image filepath String The location of the matched image date Date String The date of of the matched image scale Float The image's native spatial scale, in arc-seconds/pixel width Integer Image width height Integer Image width sunCenterX Float Distance from image left to the solar center, in pixels sunCenterY Float Distance from image bottom to the solar center, in pixels
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=getClosestImage&date=2010-06-24T00:00:00.000Z&sourceId=3
http://helioviewer.nascom.nasa.gov/api/index.php?action=getClosestImage&date=2010-06-24T00:00:00.000Z&s=1&sourceId=3
Notes:
-
At least one of the methods for specifying the image source, either a sourceId or the image observatory, instrument, detector and measurement must be included in the request.
Creating a Tile:Once you have determined the image for which you wish to retrieve a tile from using the above getClosestImage request, you are ready to begin requesting tiles for that image. Tiles are requesting by specifying the identifier for the image you wish to tile, in this case simply the filename of the image, the spatial scale that the tile should be generated at,..
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=getTile
Supported Parameters:
uri String The filepath to the JP2 image that will be tiled. The filepath is relative to the main JP2 directory, parts like /var/www/jp2 can be left out. y1 Integer The offset of the image's top boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversion. x1 Integer The offset of the image's left boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversions. y2 Integer The offset of the image's bottom boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversion. x2 Integer The offset of the image's right boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversions. format String The format of the tile. Should be png if the tile has transparency, as with LASCO images, and jpg if it does not. date ISO 8601 UTC Date The date of the image imageScale Float The scale of the image in the viewport, in arcseconds per pixel. size Integer The desired tile size in pixels. jp2Scale Float The native scale of the JP2 image in arcseconds per pixel. jp2Height Integer The height of the JP2 image in pixels. jp2Width Integer The width of the JP2 image in pixels. observatory String Observatory instrument String Instrument detector String Detector measurement String Measurement offsetX Float The offset of the center of the sun from the center of the JP2 image in pixels at the image's native resolution. offsetY Float The offset of the center of the sun from the center of the JP2 image in pixels at the image's native resolution.
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=getTile&uri=/EIT/171/2010/06/02/2010_06_02__01_00_16_255__SOHO_EIT_EIT_171.jp2 &x1=-2700.1158&x2=-6.995800000000215&y1=-19.2516&y2=2673.8684&format=jpg&date=2010-06-02+01:00:16&imageScale=5.26 &size=512&jp2Width=1024&jp2Height=1024&jp2Scale=2.63&observatory=SOHO&instrument=EIT&detector=EIT&measurement=171 &offsetX=2.66&offsetY=7.32
Feature/Event API:
Solar feature/event data used by Helioviewer is retrieved through the Heliophysics Event Knowledgebase (HEK). While the HEK includes a very rich and full-features API of it's own, Helioviewer provides only a few simple but useful feature/event query methods. Each of these types of queries are described below.
-
Event Feature Recognition Methods (FRM):
Each event stored in the HEK has an associated Feature Recognition Method or "FRM" which corresponds with the mechanism used to locate the event. This could be either an automated feature recognition method such as Computer Aided CME Tracking (CACTus) or a simple user-submitted event. To query the list of available FRMs, simply call the "getEventFRMs" API method and specify a startDate and endDate. This will return a list of the FRMs for which event data exists in the requested time range, as well as some meta-information describing each of the FRMs.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=getEventFRMs
Supported Parameters:
startDate ISO 8601 UTC Date Beginning of query window. endDate ISO 8601 UTC Date End of query window.
Result:
The result includes a list of event types denoted by their two-letter acronym as listed at the HEK. Within each event type is a list of all FRMs for which events were found in the specified query window. Finally, for each FRM some basic information including the FRM name, id, url and contact information, along with the number of events matched are returned.
count Integer The number of events found for the associated FRM frm_contact String [Optional]E-mail address or name associated with the FRM frm_url String [Optional] The URL associated with the FRM
Example: http://helioviewer.nascom.nasa.gov/api/index.php?action=getEventFRMs&startDate=2010-07-01T00:00:00.000Z&endDate=2010-07-02T00:00:00.000Z
Example Result:
{ "AR": { "NOAA SEC Observer": { "frm_url": "N/A", "frm_contact": "http://www.sec.noaa.gov/", "frm_identifier": "NOAA SEC", "count": 14 } }, "SS": { "EGSO_SFC": { "frm_url": "n/a", "frm_contact": "s.zharkov at sheffield dot ac dot uk", "frm_identifier": "EGSO_SFC", "count": 45 } }, "FL": { "SSW Latest Events": { "frm_url": "http://sohowww.nascom.nasa.gov/solarsoft/packages/gevloc/idl/ssw_flare_locator.pro", "frm_contact": "Samuel L. Freeland", "frm_identifier": "SolarSoft", "count": 13 }, "SEC standard": { "frm_url": "http://www.sec.noaa.gov/", "frm_contact": "SEC.Webmaster@noaa.gov", "frm_identifier": "SEC", "count": 13 }, "TRACE observer": { "frm_url": "http://hea-www.harvard.edu/trace/flare_catalog/", "frm_contact": "trace_planner at lmsal dot com", "frm_identifier": "TRACE flare catalog", "count": 1 } }, "FA": { "Karel Schrijver": { "frm_url": "n/a", "frm_contact": "Karel Schrijver", "frm_identifier": "Karel Schrijver", "count": 4 } } } -
Fetching or Creating Event Screenshots
Returns a collection of filepaths to screenshots of an event. If no screenshot files exist yet, it will create one or more depending on parameters, or will return an empty array if getOnly is set to true.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=getScreenshotsForEvent
Supported Parameters:
eventId String The unique ID of the event, as obtained from querying HEK. ipod Boolean [Optional] Whether or not you are looking for the scaled iPod-sized screenshot or the regular-sized screenshot. Defaults to false if not specified. getOnly Boolean [Optional] Whether or not you want images built if they don't exist. Set this to true if you are calling this method from an iPod or other interface where you just want to check for existing files. Defaults to false if not specified.
The rest of the parameter list is identical to that of takeScreenshot, except that you should never specify filename in the parameters.
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=getScreenshotsForEvent&eventId=AR211_TomBerger_20100630_175443
http://helioviewer.nascom.nasa.gov/api/index.php?action=getScreenshotsForEvent&eventId=AR211_TomBerger_20100630_175443&getOnly=true -
Fetching or Creating Event Movies
Returns a collection of filepaths to movies of an event. If no movie files exist yet, it will create one or more depending on parameters, or will return an empty array if getOnly is set to true.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=getMoviesForEvent
Supported Parameters:
eventId String The unique ID of the event, as obtained from querying HEK. ipod Boolean [Optional] Whether or not you are looking for the iPod-compatible movie or the regular movie. Defaults to false if not specified. getOnly Boolean [Optional] Whether or not you want movies built if they don't exist. Set this to true if you are calling this method from an iPod or other interface where you just want to check for existing files. Defaults to false if not specified.
The rest of the parameter list is identical to that of buildMovie, except that you should never specify hqFormat or filename in the parameters, as these are generated based upon the eventId and whether ipod is set to true or false.
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=getMoviesForEvent&eventId=AR211_TomBerger_20100630_175443
http://helioviewer.nascom.nasa.gov/api/index.php?action=getMoviesForEvent&eventId=AR211_TomBerger_20100630_175443&ipod=true
JPEG 2000 API:
Helioviewer's JPEG 2000 API's enable access to the raw JPEG 2000 images used to generate the tiles seen on the site, as well as real-time generation of JPEG 2000 Image Series (JPX).
-
JP2 Images:
Returns a single JPEG 2000 (JP2) image. If an image is not available for the date request the closest available image is returned.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=getJP2Image
Supported Parameters:
observatory String Observatory instrument String Instrument detector String Detector measurement String Measurement date ISO 8601 UTC Date Observation date and time sourceId Integer [Optional] The image source ID (can be used in place of observatory, instrument, detector and measurement parameters). jpip Boolean [Optional] Returns a JPIP URI instead of an actual image.
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=getJP2Image&observatory=SOHO&instrument=EIT&detector=EIT&measurement=171&date=2003-10-05T00:00:00Z
http://helioviewer.nascom.nasa.gov/api/index.php?action=getJP2Image&observatory=SOHO&instrument=LASCO&detector=C2&measurement=white-light&date=2003-10-05T00:00:00Z&jpip=true -
JPX API
Returns a JPEG 2000 Image Series (JPX) file. The movie frames are chosen by matching the closest image available at each step within the specified range of dates.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=getJPX
Supported Parameters:
observatory String Observatory instrument String Instrument detector String Detector measurement String Measurement startTime ISO 8601 UTC Date Movie start time endTime ISO 8601 UTC Date Movie end time cadence Integer [Optional] The desired amount of time between each movie-frame, in seconds. If no cadence is specified, the server will attempt to select an optimal cadence. sourceId Integer [Optional] The image source ID (can be used in place of observatory, instrument, detector and measurement parameters). frames Boolean [Optional] Returns individual movie-frame timestamps along with the file URI as JSON. verbose Boolean [Optional] In addition to the JPX file URI, returns any warning or error messages generated during the request. frames Boolean [Optional] Returns a JSON data structure including the JPX URI and also a list of the timestamps associated with each layer in the file. jpip Boolean [Optional] Returns a JPIP URI instead of an actual movie. linked Boolean [Optional] Returns a linked JPX file containing image pointers instead of data for each individual frame in the series. Currently, only JPX image series support this feature.
Result:
The default action is to simply return the requested JPX file. If additional information is needed, for example, then a JSON result will be returned with the file URI plus any additional parameters requested.
uri String [Optional] Location of the requested file. frames List [Optional] List of timestamps. verbose String [Optional] Any warning or error messages generated during the request
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=getJPX&observatory=SOHO&instrument=EIT&detector=EIT&measurement=171&startTime=2003-10-05T00:00:00Z&endTime=2003-10-20T00:00:00Z
http://helioviewer.nascom.nasa.gov/api/index.php?action=getJPX&observatory=SOHO&instrument=MDI&detector=MDI&measurement=magnetogram&startTime=2003-10-05T00:00:00Z&endTime=2003-10-20T00:00:00Z&cadence=3600&linked=true&jpip=true
Notes:
-
If no cadence is specified Helioviewer.org attempts to choose an optimal cadence for the requested range and data source.
Movie and Screenshot API:
The movie and screenshot API allows users to download images or time-lapse videos of what they are viewing on the website.
-
Screenshot API
Returns a single image containing all layers/image types requested. If an image is not available for the date requested the closest available image is returned.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=takeScreenshot
Supported Parameters:
obsDate ISO 8601 UTC Date Timestamp of the output image. The closest timestamp for each layer will be found if an exact match is not found. imageScale Float The zoom scale of the image. Default scales that can be used are 5.26, 10.52, 21.04, and so on, increasing or decreasing by a factor of 2. The full-res scale of an EIT image is 5.26. layers String A string of layer information in the following format:
Each layer is comma-separated with these values: [sourceId,visible,opacity].
If you do not know the sourceId, you can alternately send this layer string: [obs,inst,det,meas,opacity]. Layer strings are separated by commas: [layer1],[layer2],[layer3].y1 Integer The offset of the image's top boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversion. x1 Integer The offset of the image's left boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversions. y2 Integer The offset of the image's bottom boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversion. x2 Integer The offset of the image's right boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversions. quality Integer [Optional] The quality of the image, from 0-10. If quality is not specified, it defaults to 10. filename String [Optional] The desired filename (without the ".png" extension) of the output image. If no filename is specified, the filename defaults to a combination of the date, layer names, and image scale. display Boolean [Optional] If display is true, the screenshot will display on the page when it is ready. If display is false, the filepath to the screenshot will be returned. If display is not specified, it will default to true. watermarkOn Boolean [Optional] Enables turning watermarking on or off. If watermarkOn is set to false, the image will not be watermarked. If left blank, it defaults to true and images will be watermarked.
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=takeScreenshot&obsDate=2010-03-01T12:12:12Z&imageScale=10.52&layers=[3,1,100],[4,1,100]&x1=-5000&y1=-5000&x2=5000&y2=5000
http://helioviewer.nascom.nasa.gov/api/index.php?action=takeScreenshot&obsDate=2010-03-01T12:12:12Z&imageScale=10.52&layers=[SOHO,EIT,EIT,171,1,100],[SOHO,LASCO,C2,white-light,1,100]&x1=-5000&y1=-5000&x2=5000&y2=5000 -
Movie API
Returns filepaths to a flash video and a high quality video consisting of 10-100 movie frames. The movie frames are chosen by matching the closest image available at each step within the specified range of dates, and are automatically generated using the Screenshot API calls.
Usage:
http://helioviewer.nascom.nasa.gov/api/index.php?action=buildMovie
Supported Parameters:
startTime ISO 8601 UTC Date Desired starting timestamp of the movie. The timestamps for the subsequent frames are incremented by a certain timestep. endTime ISO 8601 UTC Date [Optional but Recommended] Desired ending timestamp of the movie. Time step and number of frames will be figured out from the range between startTime and endTime. If no endTime is specified, time frame will default to 24 hours. imageScale Float The zoom scale of the images. Default scales that can be used are 5.26, 10.52, 21.04, and so on, increasing or decreasing by a factor of 2. The full-res scale of an EIT image is 5.26. layers String A string of layer information in the following format:
Each layer is comma-separated with these values: [sourceId,visible,opacity].
If you do not know the sourceId, you can alternately send this layer string: [obs,inst,det,meas,opacity]. Layer strings are separated by commas: [layer1],[layer2],[layer3].y1 Integer The offset of the image's top boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversion. x1 Integer The offset of the image's left boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversions. y2 Integer The offset of the image's bottom boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversion. x2 Integer The offset of the image's right boundary from the center of the sun, in arcseconds. This can be calculated, if necessary, with pixel-to-arcsecond conversions. numFrames Integer [Optional] If you want a specific number of frames rather than the optimal number, you can specify the number of frames you would like to include in the movie. You may have between 10 and 120 frames. If numFrames is not specified, the optimal cadence and number of frames will be calculated for you. frameRate Integer [Optional] The number of frames per second. The default value is 8. quality Integer [Optional] The quality of the images, from 0-10. If quality is not specified, it defaults to 10. filename String [Optional] The desired filename (without the "." extension) of the output image. If no filename is specified, the filename defaults to a combination of the date, layer names, and image scale. hqFormat String [Optional] The desired format for the high quality movie file. Currently supported filetypes are "mp4", "mov", "avi", and "ipod". iPod video will come out in mp4 format but extra settings need to be applied so format must be specified as "ipod". display Boolean [Optional] If display is true, the movie will display on the page when it is ready. If display is false, the filepath to the movie's flash-format file will be returned as JSON. If display is not specified, it will default to true. watermarkOn Boolean [Optional] Enables turning watermarking on or off. If watermarkOn is set to false, the images will not be watermarked, which will speed up movie generation time but you will have no timestamps on the movie. If left blank, it defaults to true and images will be watermarked.
Examples: http://helioviewer.nascom.nasa.gov/api/index.php?action=buildMovie&startTime=2010-03-01T12:12:12Z&endTime=2010-03-04T12:12:12Z&imageScale=21.04&layers=[3,1,100],[4,1,100]&x1=-5000&y1=-5000&x2=5000&y2=5000
http://helioviewer.nascom.nasa.gov/api/index.php?action=buildMovie&startTime=2010-03-01T12:12:12Z&endTime=2010-03-04T12:12:12Z&imageScale=21.04&layers=[SOHO,EIT,EIT,304,1,100],[SOHO,LASCO,C2,white-light,1,100]&x1=-5000&y1=-5000&x2=5000&y2=5000
iPod Video:
http://helioviewer.nascom.nasa.gov/api/index.php?action=buildMovie&startTime=2010-03-01T12:12:12Z&endTime=2010-03-04T12:12:12Z&imageScale=8.416&layers=[1,1,100]&x1=-1347&y1=-1347&x2=1347&y2=1347&hqFormat=ipod&display=false&watermarkOn=false
Appendices:
-
Supported Identifiers
This appendice contains a list of the identifiers supported by Helioviewer. For some queries, complex identifiers may be built up from the simpler ones below. For example, to uniquely identify a specific type of image, you must specify a comma-separated set of four identifiers: Observatory, Instrument, Detector, and Measurement. For example, to refer to an EIT 171 image, the identifier SOHO,EIT,EIT,171 is used.
Observatories:
Identifier: Description: SOHO SOHO (Solar and Heliospheric Observatory) TRACE TRACE (Transition Region and Coronal Explorer)
Instruments:
Identifier: Description: EIT EIT (Extreme ultraviolet Imaging Telescope) LASCO LASCO (Large Angle and Spectrometric Coronagraph Experiment) MDI MDI (The Michelson Doppler Imager) TRACE TRACE (Transition Region and Coronal Explorer)
Detectors:
Identifier: Description: C2 LASCO C2 C3 LASCO C3 EIT EIT (Extreme ultraviolet Imaging Telescope) MDI MDI (The Michelson Doppler Imager)
Measurements:
Identifier: Description: 171 171 Ångström 195 195 Ångström 284 284 Ångström 304 304 Ångström white-light White-light continuum Intensity spectrogram magnetogram Magnetogram
Event Types:
Identifier: Description: CME Coronal Mass Ejection Solar Flare Solar Flare Type II Radio Burst Type II Radio Burst Active Region Active Region GeneralActivityReport SOHO General Activity Report -
Variable Types
This appendice contains a list of some of the variable types used by the Helioviewer API's.
Type: Description: Example: Integer An integer. 12 Float A floating point number. 2.63 String A string. SOHO List A comma-separated list of some other type, usually strings or integers VSOService::noaa, GOESXRayService::GOESXRay 2d List This is similar to a list except that each item of the list is a bracket-delineated list itself. [SOHO,EIT,EIT,171,1,100],[SOHO,LASCO,C2,white-light,0,100],[SOHO,MDI,MDI,continuum,1,50] Unix Timestamp The number of seconds since January 1, 1970, midnight UTC. (see [1]) 1065512000 // October 7th 2003, 7:33:20 UTC ISO 8601 UTC Date ISO 8601 is a widely supported standarized date format. (See [2], [3]) 2003-10-05T00:00:00Z // Note the "Z" at the end. This specifies that this is a UTC datetime
References:
[1] Epoch Converter - Unix Timestamp Converter
[2] ISO 8601 - Wikipedia
[3] Date and Time Formats - W3.org
-
Pixel to Arcsecond Conversions
This appendix contains a list of JPEG2000 image scales for some layer types and how to convert between pixels on the image and arcseconds.
Layer Type: Scale (arcsec/pixel) Width (arcsec) EIT (all measurements) 2.63 2693.12 LASCO C2 11.9 12185.6 LASCO C3 56 57344 MDI (all measurements) 1.985707 2033.364
To convert between arseconds and pixels, you must know something about the dimensions of the original JPEG2000 image and the coordinates of the center of the sun.
Center coordinates can be found in the FITS header of an image under CRPIX1 (x-offset) and CRPIX2 (y-offset from the bottom of the image). Therefore the y-offset must be adjusted to reflect that the origin is in the top left corner instead of the bottom left corner (simply take newYOffset = ySize - yOffset).
Most SOHO images are 1024x1024 pixels.
Let's say we want to find out the offset in arcseconds of the top left corner of an EIT image (Coordinates 0,0). We'll use some example numbers:
width = height = 1024 px
xOffset = 514.660 px
yOffset = 1024 - 505.19 = 518.81 px
First convert the top-left coordinates (0,0) into their offsets from the center of the sun (514.660,518.81) by subtracting the center coordinates from the top-left coordinates.
Top-left coordinates are now (-514.660, -518.81)
Next use the scale listed above to convert these offsets to arcseconds:
-514.660 px * 2.63 arcsec/px
= -1353.5558 arcseconds from center on x-axis
-518.81 px * 2.63 arcsec/px
= -1364.4703 arcseconds from center on y-axis
Putting those together, the formula to find an offset for each coordinate is:
x = (xCoord - xOffset) * scale or
y = (yCoord - (imageHeight - yOffset)) * scale
Therefore your x1 value is -1353.5558 and your y1 value is -1364.4703. This same formula can be used to find x2 and y2.
-
Last Updated: 2010-08-17 | Questions? -