[ROOT]  doc  DocFrag  SELECT Assembly, DocFragType, Description.FirstLine()   SKIP 993   

184 items

DocFragIdAssemblyDocFragTypeDescription.FirstLine()
ARCQuery.QueryExpressionPivot.GetCrossSummationCheckerARCQueryClassMemberReturns a cross sum checker for int, long, double, Timespan.
ARCQuery.QueryExpressionPivot.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionPivot.SyntaxHelpARCQueryClassMember1) 'PIVOT {rowKey} BY {columnKey}' like "PIVOT Colour BY Production.Year"
ARCQuery.QueryExpressionPivot.AggregationTypeARCQueryClassMemberMost common value is -Count-, in which case -AggregationKey- may be correspondingly set to null.
ARCQuery.QueryExpressionPivot.AggregationKeyARCQueryClassMemberThis is often null (with -AggregationType- correspondingly set to Count-).
ARCQuery.QueryExpressionRelARCQueryClassEnables 'jumping' or 'travelling' from a collection of one entity type to another (related) entity type.
ARCQuery.QueryExpressionRel.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionRel.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionRel.SyntaxHelpARCQueryClassMember'REL {type}'
ARCQuery.QueryExpressionRel.StrTypeARCQueryClassMemberIn the simplest terms, the -ToStringVeryShort- representation of the type that we are 'jumping' to.
ARCQuery.QueryExpressionSelectARCQueryClassSelects which fields to include.
ARCQuery.QueryExpressionSelect.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionSelect.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionSelect.SyntaxHelpARCQueryClassMemberSELECT {field-1}, {field-2} ... {field-n}
ARCQuery.QueryExpressionSelfCreateARCQueryClassReturns self created collection from given class type.
ARCQuery.QueryExpressionSelfCreate.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionSelfCreate.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionSelfCreate.SyntaxHelpARCQueryClassMemberSELFCREATE {Type supporting ISelfCreateCollection}'
ARCQuery.QueryExpressionShuffleARCQueryClassShuffles collection in random order.
ARCQuery.QueryExpressionShuffle.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionShuffle.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionShuffle.SyntaxHelpARCQueryClassMemberSHUFFLE
ARCQuery.QueryExpressionSkipARCQueryClassSkips the specified number of elements from the current query result.
ARCQuery.QueryExpressionSkip.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionSkip.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionSkip.SyntaxHelpARCQueryClassMemberSKIP {Count} like 'SKIP 42'
ARCQuery.QueryExpressionStrictARCQueryClassDescribes -Strictness- ON / OFF when executing query.
ARCQuery.QueryExpressionStrict.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionStrict.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionStrict.SyntaxHelpARCQueryClassMemberSTRICT {strictnessLevel}
ARCQuery.QueryExpressionTakeARCQueryClassTakes a specific number of elements from the current query result.
ARCQuery.QueryExpressionTake.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionTake.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionTake.SyntaxHelpARCQueryClassMemberTAKE {Count}
ARCQuery.QueryExpressionThenByARCQueryClassAllows sorting by multiple columns.
ARCQuery.QueryExpressionThenBy.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionThenBy.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionThenBy.SyntaxHelpARCQueryClassMemberTHEN BY {key} [DESC] / [ASC]
ARCQuery.QueryExpressionTitleARCQueryClassThe title to be used in the final presentation of the query result.
ARCQuery.QueryExpressionTitle.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionTitle.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionTitle.SyntaxHelpARCQueryClassMemberTITLE {title}
ARCQuery.QueryExpressionWhereARCQueryClassExecutes a 'WHERE {key} {operator} {value}' against the given collection.
ARCQuery.QueryExpressionWhere.ExecuteARCQueryClassMemberTransforms the given input collection into a resulting collection.
ARCQuery.QueryExpressionWhere.IsMatchARCQueryClassMemberReturns TRUE if property matches criteria.
ARCQuery.QueryExpressionWhere.TryCheckForExistenceOfKeyARCQueryClassMemberUsed by query expressions in order to catch wrong field names used or misspelling of field names.
ARCQuery.QueryExpressionWhere.SyntaxHelpARCQueryClassMemberWHERE {key} {operator} {value}
ARCQuery.QueryExpressionWhere.ValueARCQueryClassMemberThe Value should ideally be as strongly typed as possible. Note that it may be of type -ValueEnum- relevant for queries like WHERE Name = NULL.
ARCQuery.QueryProgressARCQueryClassKeeps track of execution of query (that is, a query consisting of multiple -QueryExpression-), and also stores final result.
ARCQuery.QueryProgress.ToJSONSerializeableARCQueryClassMemberOverride of default interface method -ToJSONSerializeable- is necessary because resulting data is 'hidden' within -Result-.
ARCQuery.QueryProgress.PreviousQueryJustExecutedARCQueryClassMemberTODO: This is somewhat loosely associated.
ARCQuery.QueryProgress.NextQueryToExecuteARCQueryClassMemberTODO: This is somewhat loosely associated.
ARCQuery.QueryProgress.ToHTMLSimpleSingleARCQueryClassMemberAlternative ('override') to -ToHTMLSimpleSingle-.
ARCQuery.QueryProgress.OrderAndReconstructKeysARCQueryClassMemberPart 1:
ARCQuery.QueryProgress.GetHTMLLinksToIndividualQueryPartsARCQueryClassMemberIs able to generate the following:
ARCQuery.QueryProgress.ToStringARCQueryClassMemberTODO: Decide on what we actually want with ToString for this class.
ARCQuery.QueryProgress.DataStorageARCQueryClassMemberNote how this property will point to the hierarhical level in the data storage from which the first -QueryExpression- was found in the query string.
ARCQuery.QueryProgress.ResultARCQueryClassMemberThis gets updated continously as the different query expressions get evaluated.
ARCQuery.QueryProgress.ExecutedQueriesARCQueryClassMemberThe result from calling -Execute- for each query in -Queries-.
ARCQuery.QueryProgress.AdditionalJavascriptUrlEncoderARCQueryClassMemberReturns the Javascript code for converting characters that are difficult to pass in URLs to a format understood by -Decode-.
ARCQuery.TranslationsARCQueryClassOffers a very simple system for keeping track of translation between different ("western") languages.
ARCQuery.Translations.ToStringARCQueryClassMemberTODO: Decide on what we actually want with ToString for this class.
ARCQuery.TranslationsCollectionARCQueryClassThis would consist of one key per language, with keys like "de_DE", "fr_FR", "nb_NO".
ARCQuery.TranslationsCollection.TrySetPPARCQueryClassMemberReplaces default interface method -TrySetPP-.
ARCQuery.Strictness.OFFARCQueryEnumMember 
ARCQuery.QuantileARCQueryEnumDescribes quantiles like -TERTILE- and -QUARTILE-.
ARCQuery.Quantile.MEDIANARCQueryEnumMemberDivide into two parts
ARCQuery.Quantile.TERTILEARCQueryEnumMemberDivide into three parts
ARCQuery.Quantile.QUARTILEARCQueryEnumMemberDivide into four parts
ARCQuery.Quantile.QUINTILEARCQueryEnumMemberDivide into five parts
ARCQuery.Quantile.SEXTILEARCQueryEnumMemberDivide into 6 parts
ARCQuery.Quantile.SEPTILEARCQueryEnumMemberDivide into 7 parts
ARCQuery.Quantile.OCTILEARCQueryEnumMemberDivide into 8 parts
ARCQuery.Quantile.DECILEARCQueryEnumMemberDivide into 10 parts
ARCQuery.Quantile.DUODECILEARCQueryEnumMemberDivide into 12 parts
ARCQuery.Quantile.HEXADECILEARCQueryEnumMemberDivide into 16 parts
ARCQuery.Quantile.VENTILEARCQueryEnumMemberDivide into 20 parts
ARCQuery.Quantile.PERCENTILEARCQueryEnumMemberDivide into 100 parts
ARCQuery.Quantile.PERMILLEARCQueryEnumMemberDivide into 1000 parts
ARCQuery.QueryProgressPARCQueryEnumDescribes class -QueryProgress-.
ARCQuery.QueryProgressP.TitleARCQueryEnumMemberThe title to be used in the final presentation of the query result.
ARCQuery.QueryProgressP.QueriesARCQueryEnumMember 
ARCQuery.QueryProgressP.StrCurrentTypeARCQueryEnumMemberNormally the -ToStringVeryShort- representation of the type of objects in the -Result- collection.
ARCQuery.QueryProgressP.CurrentStrictnessARCQueryEnumMemberDescribes -Strictness- ON / OFF when executing query.
ARCQuery.QueryProgressP.CreateHintsARCQueryEnumMemberDescribes if hints are to be generated (as query progresses) for new queries.
ARCQuery.QueryProgressP.UseCacheARCQueryEnumMemberDescribes if cache is to be used or not.
ARCQuery.QueryProgressP.LinkAdjustmentARCQueryEnumMemberExperimental: Adjustment to be done by -QueryProgress-.- ToHTMLSimpleSingle- (when it ascertains how to go back to root level).
ARCQuery.QueryProgressP.LimitARCQueryEnumMemberLimits the final HTML presentation of results (limits the number of elements being presented). Does not affect the query in itself. Used in order to avoid building huge HTML pages which will not be consumed anyway.
ARCQuery.QueryProgressP.TerminateReasonARCQueryEnumMemberThe reason for a query being terminated. This property should contain a user friendly message about the problem and how to fix it.
ARCQuery.QueryProgressP.AllLogEntriesForThisQueryARCQueryEnumMember 
ARCQuery.TranslationsPARCQueryEnumThis enum has no values because the keys are the actual string to be translated.
ARCQuery.TranslationSinglePARCQueryEnumDescribes class -TranslationSingle-.
ARCQuery.TranslationSingleP.TextARCQueryEnumMember 
ARCQuery.TranslationSingleP.IsMissingARCQueryEnumMemberValue TRUE indicates that the Text given is simply the original key, in other words, the translation for the key is actually missing.
ARCQuery.EntityMethodKey+MethodTypeARCQueryEnumExplains type of method signature found (trough reflection) for corresponding entity class.
ARCQuery.EntityMethodKey+MethodType.SimpleARCQueryEnumMemberSignature like 'bool TryGet{KeyName}(out IP retval, out string errorResponse)'
ARCQuery.EntityMethodKey+MethodType.ComplexARCQueryEnumMemberSignature like 'bool TryGet{KeyName}(IP dataStorage, IK thisKey, out IP retval, out string errorResponse)'
ARCQuery.QueryExpressionWhere+WildcardPositionTypeARCQueryEnumPosition of wildcard in value, like '*ABC' (-AtStart-), 'ABC*' (-AtEnd-) and
ARCQuery.QueryExpressionWhere+WildcardPositionType.AtStartARCQueryEnumMemberExample: '*ABC'.
ARCQuery.QueryExpressionWhere+WildcardPositionType.AtEndARCQueryEnumMemberExample: 'ABC*'.
ARCQuery.QueryExpressionWhere+WildcardPositionType.AtStartAndEndARCQueryEnumMemberExample: '*ABC*'.
ARCQuery.QueryExpressionWhere+ValueEnumARCQueryEnumHelper enum used internally by -QueryExpressionWhere- in order to represent queries like WHERE Name = NULL, WHERE Name = NOTNULL and WHERE Name = * (ALL).
ARCQuery.QueryExpressionWhere+ValueEnum.NULLARCQueryEnumMember 
ARCQuery.QueryExpressionWhere+ValueEnum.NOTNULLARCQueryEnumMemberPractical value enabling suggestions from -GetPrevious- and -GetNext-.
ARCQuery.QueryExpressionWhere+ValueEnum.ALLARCQueryEnumMemberEquivalent to query like WHERE Name = *
ARCQuery.ValueComparerDateTime+ResolutionEnumARCQueryEnum 
ARCQuery.ValueComparerDateTime+ResolutionEnum.SecondARCQueryEnumMember 
ARCQuery.ValueComparerDateTime+ResolutionEnum.MinuteARCQueryEnumMember 
ARCQuery.ValueComparerDateTime+ResolutionEnum.HourARCQueryEnumMember 
ARCQuery.ValueComparerDateTime+ResolutionEnum.DayARCQueryEnumMember 
ARCQuery.ValueComparerDateTime+ResolutionEnum.WeekARCQueryEnumMember 
ARCQuery.ValueComparerDateTime+ResolutionEnum.MonthARCQueryEnumMember 
ARCQuery.ValueComparerDateTime+ResolutionEnum.QuarterARCQueryEnumMember 
ARCQuery.ValueComparerDateTime+ResolutionEnum.YearARCQueryEnumMember 
Assembly ARCAPI AssemblyA library providing an API on top of the -PropertyStream-.
ARCAPI.ContentResultARCAPIClassMimicks Microsoft.AspNetCore.Mvc.ContentResult.
ARCAPI.ContentResult.CreateHTMLOKARCAPIClassMemberNOTE: Parameter must be a complete HTML page.
ARCAPI.ContentResult.CreateErrorARCAPIClassMemberTODO: Add a key / value format for error messages, like done for -Log-.
ARCAPI.AddControllerARCAPIClassParses and stores a -PropertyStreamLine-.
ARCAPI.AddController.APIMethodARCAPIClassMemberThe (only) API method that this controller supports.
ARCAPI.AddController.ToStringARCAPIClassMemberTODO: Decide on what we actually want with ToString for this class.
ARCAPI.AddController.AllowFilterARCAPIClassMemberDescribes what data is allowed to change through a list of -Subscription- instances.
ARCAPI.BaseControllerARCAPIClassContains basic functionality for serving API methods.
ARCAPI.BaseController.BuildControllerStorageARCAPIClassMemberBuilds a collection of 'std' (standard) controller instances to use for serving API requests.
ARCAPI.BaseController.APIMethodARCAPIClassMemberThe (only) API method that this controller supports.
ARCAPI.BaseController.CatchAllARCAPIClassMemberServes the typical single generic API method in an AgoRapide API.
ARCAPI.BaseController.TryNavigateToLevelInDataStorageARCAPIClassMemberNavigates to the specified level (usually within -Storage-).
ARCAPI.BaseController.GetFormatAndAdjustRequestARCAPIClassMemberDecides -ResponseFormat- (like HTML, JSON, CSV, PDF and so on).
ARCCore.BaseAttributeARCCoreClassInstances of this class are used as source of documentation and data for the API.
ARCCore.BasePKAttributeARCCoreClassThe class containing the actual attributes used for -TaggingOfPropertyKeys-.
ARCCore.BasePKAttribute.InitializeARCCoreClassMemberTo be overridden in sub-classes, but do note that sub-classes are supposed to call base.Initialize() at end of their own initialization.
ARCCore.BasePKAttribute.IsDefaultARCCoreClassMemberDoes not have a corresponding -BaseAttributeP- since all attributes relevant for querying (for instance in the documentation) will be IsDefault = FALSE anyway. (if we had included it in -BaseAttributeP- it would just have led to a lot of confusing IsDefault = FALSE key-values showing up.)
ARCCore.ClassAttribute.GetAttributeARCCoreClassMemberThrows exception if type implements -IP- and no corresponding enum found (enum ending with capital letter 'P' (like 'CustomerP' for enum describing class 'Customer' for instance)
ARCCore.ClassAttribute.TryGetAsTypeScriptARCCoreClassMemberGenerates typescript code corresponding to the class which this instance describes.
ARCCore.IP.IncARCCoreClassMemberIncrements given property key by 1. Sets to 1 if not found. Uses long, not integer.
ARCCore.IP.DecARCCoreClassMemberDecrements given property key by 1. Sets to -1 if not found. Uses long, not integer.
ARCCore.IP.LogARCCoreClassMemberThe 'final' overload of -Log- that is called by the other overloads.
ARCCore.IP.LogExecuteTimeARCCoreClassMemberTimes the execution of the given function and logs details about elapsed time.
ARCCore.IP.HandleExceptionARCCoreClassMemberNote that most relevant to use for -PConcurrent-.
ARCCore.IP.TryParseDtrARCCoreClassMemberParses a PropertyStreamLine- beginning with -dtr-.
ARCCore.IP.InitializeARCCoreClassMemberNote that has a default implementation (doing nothing).
ARCCore.IP.AssertIntegrityARCCoreClassMemberSee -TryAssertIntegrity-.
ARCCore.IP.TryAssertIntegrityARCCoreClassMemberAsserts the integrity of this entity.
ARCCore.IP.ToStringARCCoreClassMemberThe ToString()-implementation in the classes implementing this interface is supposed to give a short concise representation of the object for debugging and logging purposes, that is, intended for human consumption. The most 'important' implementation is probably the one in -PRich- (-ToString-) because that one is often the basis for your entity classes like 'Customer', 'Order' and so on
ARCCore.IP.TrySetPPARCCoreClassMemberSetPP = set property of property. Sets property of entity contained within this class.
ARCCore.IP.GetKeysEqualToValueARCCoreClassMemberReturns properties which themselves again have key and value equal to the given key and value.
ARCCore.IP.OnTrySetPARCCoreClassMemberEvent handler to be called by -TrySetP- before it changes a property value (but AFTER it has done any validity checks, that is, after it has 'decided' to return TRUE, in other words, event handler should be called when change is guaranteed to go through, but before it actually has been done).
ARCCore.IP.TryGetPARCCoreClassMemberGets a single property for this object
ARCCore.IP.ValuesARCCoreClassMemberReturns all the values (all the properties) for this instance.
ARCCore.IP.LoggerARCCoreClassMemberDescribes a logger.
ARCCore.IP.AllIPDerivedTypesARCCoreClassMemberAll relevant -IP--derived types for the whole application.
ARCCore.IP.AllIPDerivedTypesWithPKEnumARCCoreClassMemberAll relevant -IP--derived types for the whole application for which the also is defined a -PropertyKeyEnum-.
ARCCore.IP.AllIPDerivedTypesWithPKEnumApplicationSpecificARCCoreClassMemberAll relevant -IP--derived types for the -ApplicationSpecificCode- part of the application for which also is defined a -PropertyKeyEnum-.
ARCCore.IP.AllIPDerivedEntityCollectionClassesDictARCCoreClassMemberAll -IP--derived types for which is found a corresponding class with name like '{EntityType}Collection'
ARCCore.IP.AllIPDerivedTypesInludingGenericAndAbstractARCCoreClassMemberAll relevant -IP--derived types (except the interface -IP- itself) known to the application.
ARCCore.IP.AllIPDerivedTypesDictARCCoreClassMemberProvides lookup of a type in -AllIPDerivedTypes- given its string representation.
ARCCore.IP.AllIPDerivedTypesDictIKTypeARCCoreClassMemberSame as -AllIPDerivedTypesDict- except that value is -IKType-, not string.
ARCCore.PARCCoreClass'Dummy'-class, not necessarily in use. See -PP- for more information. Created because of the concept of CorrespondingClass which is strictly enforced
ARCCore.P.TryGetPARCCoreClassMemberMade virtual 13 Jan 2022. Possibly the same could be done for all other methods here since _properties is Protected anyway.
ARCCore.P.TryGetVARCCoreClassMemberNote that 'normally' this method would be irrelevant for a -PRich- object because we will usually be an entity object (like 'Customer') not having an intrinsic value ourselves per se (because we will instead be containing a list of values).
ARCCore.P.ToStringARCCoreClassMemberTODO: Decide on what we actually want with ToString for this class.
ARCCore.ICreatedARCCoreClassA dummy interface signifying that implementing class has the ability to store (in-memory) metadata -Created-
ARCCore.PCollectionARCCoreClassA class useful for storing a collection of entities (a table in RDBMS-terms) because it implements -Indexing-.
ARCCore.PCollection.TrySetPPARCCoreClassMemberReplaces default interface method -TrySetPP-.
ARCCore.PII.TryGetPARCCoreClassMemberMade virtual 13 Jan 2022. Possibly the same could be done for all other methods here since _properties is Protected anyway.
ARCCore.PII.ToStringARCCoreClassMemberTODO: Decide on what we actually want with ToString for this class.
ARCCore.IPIIARCCoreClassFuture expansion, using different classes for storing, not only -PII-.
ARCCore.IIKIIARCCoreClassRelated to -PII-, property for storing individual items
ARCCore.IIKII.PackParseResultForStorageInIKIIARCCoreClassMemberThis method corresponds to -PackParseResultForStorageInEntityObject-.
ARCCore.IIKII.PackObjectForStorageInIKIIARCCoreClassMemberThis method corresponds to -PackObjectForStorageInEntityObject-.
ARCCore.PReadOnlyARCCoreClassExperimental (from Feb 2022) class suitable for classes that do not need to be deserialized, or to accept write requests through -PropertyAccess-.
ARCCore.PRichARCCoreClassFully flexible storage. Can store anything. Typical inherited for entity representations like 'Customer' or 'Order'.
ARCCore.PRich.TryGetPARCCoreClassMemberMade virtual 13 Jan 2022. Possibly the same could be done for all other methods here since _properties is Protected anyway.
ARCCore.PRich.TryGetVARCCoreClassMemberNote that 'normally' this method would be irrelevant for a -PRich- object because we will usually be an entity object (like 'Customer') not having an intrinsic value ourselves per se (because we will instead be containing a list of values).
ARCCore.PRich.ToStringARCCoreClassMemberTODO: Decide on what we actually want with ToString for this class.
ARCCore.PValue<T>ARCCoreClassSingle value storage.
ARCCore.PValue<T>.TrySetPARCCoreClassMemberNOTE: -TryStore- is explicit aware that -PValue- and -PValueEmpty-
ARCCore.PValue<T>.TryGetVARCCoreClassMemberSupports duck typing.
ARCCore.PValue<T>.ConvertObjectToStringARCCoreClassMemberConverts object to string.
ARCCore.PValue<T>.ToStringARCCoreClassMemberDo no cache this value, because memory consumption would then increase significantly in your applicationj
ARCCore.PValue<T>.DeepCopyARCCoreClassMemberNote that if the generic type (T) is not immutable, then what we return will not be a truly deep copy.
ARCCore.PValue<T>..ctorARCCoreClassMemberNote how this class does not have a parameter-less constructor (unlike all other -IP--derived classes in AgoRapide)
ARCCore.PValueEmptyARCCoreClassRepresents the 'no value'.
ARCCore.PValueEmpty.TrySetPARCCoreClassMemberNOTE: -TryStore- is explicit aware that -PValue- and -PValueEmpty-

Generated 2025-06-21 02:22:38.704 UTC