## Changes Introduced in V8.5

The following describes the most significant changes which occurred in the AST library between versions V8.4.0 and V8.5.1:

1. - A new class of MappingMapping called ChebyMapChebyMap has been added. This is a Mapping that implements Chebyshev polynomial transformations.

2. A bug has been fixed in the PolyMapPolyMap class that caused incorrect values to be returned for the TranForwardTranForward and TranInverseTranInverse attributes if the PolyMap has been inverted.

3. The KeyMapKeyMap class has a new method called astMapGetCastMapGetC which returns a named entry as a single string. If the entry is a vector the returned string is a comma-separated list of its elements, enclosed in parentheses.

4. If the function that delivers error messages to the user (astPutErr) is re-implemented, the new version can now be registered at run-time using the new astSetPutErrastSetPutErr function. Previously, the new version needed to be linked into the application at build time.

5. The FrameFrame class now has a new attribute caled DTAI, which can be used to specify the number of leap seconds at the moment represented by the Frame's EpochEpoch attribute. By default, the internal look-up table of leap seconds contained within AST is used. The DTAI attribute allows old versions of AST, which may not include the most recent leap seconds, to be used with new data.

6. The TimeMapTimeMap class has been changed so that some conversions now require a “DtaiDtai” value (i.e. the number of leap seconds) to be supplied by the caller. If AST__BAD is supplied for “Dtai”, the internal look-up table of leap seconds contained withn AST will be used. The conversions affected are those between TAI and UTC, and those between TT and TDB.