Show / Hide Table of Contents

Class DistributedAutonomousDbServiceClient

Service client instance for DistributedAutonomousDbService.

Inheritance
object
ClientBase
RegionalClientBase
DistributedAutonomousDbServiceClient
Implements
IDisposable
Inherited Members
RegionalClientBase.logger
RegionalClientBase.SetRegion(Region)
RegionalClientBase.SetRegion(string)
RegionalClientBase.UseRealmSpecificEndpointTemplate(bool)
RegionalClientBase.PopulateServiceParametersInEndpointTemplate(RestClient, Dictionary<string, object>)
RegionalClientBase.parseEndpointForParameters(string)
ClientBase.restClient
ClientBase.service
ClientBase.userAgent
ClientBase.Dispose()
ClientBase.Dispose(bool)
ClientBase.SetEndpoint(string)
ClientBase.GetEndpoint()
ClientBase.GetUserAgent()
ClientBase.SetRealmSpecificEndpointTemplate(string)
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Oci.DistributeddatabaseService
Assembly: OCI.DotNetSDK.Distributeddatabase.dll
Syntax
public class DistributedAutonomousDbServiceClient : RegionalClientBase, IDisposable

Constructors

DistributedAutonomousDbServiceClient(IBasicAuthenticationDetailsProvider, ClientConfiguration, string)

Creates a new service instance using the given authentication provider and/or client configuration and/or endpoint. A client configuration can also be provided optionally to adjust REST client behaviors.

Declaration
public DistributedAutonomousDbServiceClient(IBasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration clientConfiguration = null, string endpoint = null)
Parameters
Type Name Description
IBasicAuthenticationDetailsProvider authenticationDetailsProvider

The authentication details provider. Required.

ClientConfiguration clientConfiguration

The client configuration that contains settings to adjust REST client behaviors. Optional.

string endpoint

The endpoint of the service. If not provided and the client is a regional client, the endpoint will be constructed based on region information. Optional.

Properties

Paginators

Declaration
public DistributedAutonomousDbServicePaginators Paginators { get; }
Property Value
Type Description
DistributedAutonomousDbServicePaginators

Waiters

Declaration
public DistributedAutonomousDbServiceWaiters Waiters { get; }
Property Value
Type Description
DistributedAutonomousDbServiceWaiters

Methods

AddDistributedAutonomousDatabaseGdsControlNode(AddDistributedAutonomousDatabaseGdsControlNodeRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Add new Global database services control(GDS CTL) node for the Globally distributed autonomous database.

Declaration
public Task<AddDistributedAutonomousDatabaseGdsControlNodeResponse> AddDistributedAutonomousDatabaseGdsControlNode(AddDistributedAutonomousDatabaseGdsControlNodeRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
AddDistributedAutonomousDatabaseGdsControlNodeRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<AddDistributedAutonomousDatabaseGdsControlNodeResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use AddDistributedAutonomousDatabaseGdsControlNode API.

ChangeDistributedAutonomousDatabaseCompartment(ChangeDistributedAutonomousDatabaseCompartmentRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Move the Globally distributed autonomous database and its dependent resources to the specified compartment.

Declaration
public Task<ChangeDistributedAutonomousDatabaseCompartmentResponse> ChangeDistributedAutonomousDatabaseCompartment(ChangeDistributedAutonomousDatabaseCompartmentRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
ChangeDistributedAutonomousDatabaseCompartmentRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<ChangeDistributedAutonomousDatabaseCompartmentResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use ChangeDistributedAutonomousDatabaseCompartment API.

ConfigureDistributedAutonomousDatabaseGsms(ConfigureDistributedAutonomousDatabaseGsmsRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Configure new Global Service Manager(GSM aka shard manager) instances for the Globally distributed autonomous database.

Declaration
public Task<ConfigureDistributedAutonomousDatabaseGsmsResponse> ConfigureDistributedAutonomousDatabaseGsms(ConfigureDistributedAutonomousDatabaseGsmsRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
ConfigureDistributedAutonomousDatabaseGsmsRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<ConfigureDistributedAutonomousDatabaseGsmsResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use ConfigureDistributedAutonomousDatabaseGsms API.

ConfigureDistributedAutonomousDatabaseSharding(ConfigureDistributedAutonomousDatabaseShardingRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Once all components of Globally distributed autonomous database are provisioned, and signed GSM certificates are successfully uploaded, this api shall be invoked to configure sharding on the Globally distributed autonomous database. Note that this 'ConfigureSharding' API also needs to be invoked after successfully adding a new shard to the Globally distributed autonomous database using PATCH api. If this API is not invoked after successfully adding a new shard, then that new shard will not be a participant in sharding topology of the Globally distributed autonomous database.

Declaration
public Task<ConfigureDistributedAutonomousDatabaseShardingResponse> ConfigureDistributedAutonomousDatabaseSharding(ConfigureDistributedAutonomousDatabaseShardingRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
ConfigureDistributedAutonomousDatabaseShardingRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<ConfigureDistributedAutonomousDatabaseShardingResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use ConfigureDistributedAutonomousDatabaseSharding API.

CreateDistributedAutonomousDatabase(CreateDistributedAutonomousDatabaseRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Creates a Globally distributed autonomous database.

Declaration
public Task<CreateDistributedAutonomousDatabaseResponse> CreateDistributedAutonomousDatabase(CreateDistributedAutonomousDatabaseRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
CreateDistributedAutonomousDatabaseRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<CreateDistributedAutonomousDatabaseResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use CreateDistributedAutonomousDatabase API.

DeleteDistributedAutonomousDatabase(DeleteDistributedAutonomousDatabaseRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Terminate the given Globally distributed autonomous databases.

Declaration
public Task<DeleteDistributedAutonomousDatabaseResponse> DeleteDistributedAutonomousDatabase(DeleteDistributedAutonomousDatabaseRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
DeleteDistributedAutonomousDatabaseRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<DeleteDistributedAutonomousDatabaseResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use DeleteDistributedAutonomousDatabase API.

DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequest(DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequestRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Generate the common certificate signing request for GSMs. Download the <globalautonomousdb-prefix>.csr file from API response. Users can use this .csr file to generate the CA signed certificate, and as a next step use 'uploadSignedCertificateAndGenerateWallet' API to upload the CA signed certificate to GSM, and generate wallets for the GSM instances of the Globally distributed autonomous database.

Declaration
public Task<DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequestResponse> DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequest(DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequestRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequestRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequestResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use DownloadDistributedAutonomousDatabaseGsmCertificateSigningRequest API.

GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequest(GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequestRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Generate the certificate signing request for GSM instances of the Globally distributed autonomous database. Once certificate signing request is generated, then customers can download the certificate signing request using 'downloadGsmCertificateSigningRequest' api call.

Declaration
public Task<GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequestResponse> GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequest(GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequestRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequestRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequestResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use GenerateDistributedAutonomousDatabaseGsmCertificateSigningRequest API.

GenerateDistributedAutonomousDatabaseWallet(GenerateDistributedAutonomousDatabaseWalletRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Generate the wallet associated with Globally distributed autonomous database.

Declaration
public Task<GenerateDistributedAutonomousDatabaseWalletResponse> GenerateDistributedAutonomousDatabaseWallet(GenerateDistributedAutonomousDatabaseWalletRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
GenerateDistributedAutonomousDatabaseWalletRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<GenerateDistributedAutonomousDatabaseWalletResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use GenerateDistributedAutonomousDatabaseWallet API.

GetDistributedAutonomousDatabase(GetDistributedAutonomousDatabaseRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Gets the details of the Globally distributed autonomous database identified by given id.

Declaration
public Task<GetDistributedAutonomousDatabaseResponse> GetDistributedAutonomousDatabase(GetDistributedAutonomousDatabaseRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
GetDistributedAutonomousDatabaseRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<GetDistributedAutonomousDatabaseResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use GetDistributedAutonomousDatabase API.

ListDistributedAutonomousDatabases(ListDistributedAutonomousDatabasesRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

List of Globally distributed autonomous databases.

Declaration
public Task<ListDistributedAutonomousDatabasesResponse> ListDistributedAutonomousDatabases(ListDistributedAutonomousDatabasesRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
ListDistributedAutonomousDatabasesRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<ListDistributedAutonomousDatabasesResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use ListDistributedAutonomousDatabases API.

PatchDistributedAutonomousDatabase(PatchDistributedAutonomousDatabaseRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Patch operation to add, remove or update shards to the Globally distributed autonomous database topology. In single patch operation, multiple shards can be either added, or removed or updated. Combination of inserts, update and remove in single operation is not allowed.

Declaration
public Task<PatchDistributedAutonomousDatabaseResponse> PatchDistributedAutonomousDatabase(PatchDistributedAutonomousDatabaseRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
PatchDistributedAutonomousDatabaseRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<PatchDistributedAutonomousDatabaseResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use PatchDistributedAutonomousDatabase API.

RotateDistributedAutonomousDatabasePasswords(RotateDistributedAutonomousDatabasePasswordsRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Rotate passwords for different components of the Globally distributed autonomous database.

Declaration
public Task<RotateDistributedAutonomousDatabasePasswordsResponse> RotateDistributedAutonomousDatabasePasswords(RotateDistributedAutonomousDatabasePasswordsRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
RotateDistributedAutonomousDatabasePasswordsRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<RotateDistributedAutonomousDatabasePasswordsResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use RotateDistributedAutonomousDatabasePasswords API.

StartDistributedAutonomousDatabase(StartDistributedAutonomousDatabaseRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Start the shards, catalog and GSMs of Globally distributed autonomous database.

Declaration
public Task<StartDistributedAutonomousDatabaseResponse> StartDistributedAutonomousDatabase(StartDistributedAutonomousDatabaseRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
StartDistributedAutonomousDatabaseRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<StartDistributedAutonomousDatabaseResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use StartDistributedAutonomousDatabase API.

StopDistributedAutonomousDatabase(StopDistributedAutonomousDatabaseRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Stop the shards, catalog and GSM instances for the Globally distributed autonomous database.

Declaration
public Task<StopDistributedAutonomousDatabaseResponse> StopDistributedAutonomousDatabase(StopDistributedAutonomousDatabaseRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
StopDistributedAutonomousDatabaseRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<StopDistributedAutonomousDatabaseResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use StopDistributedAutonomousDatabase API.

UpdateDistributedAutonomousDatabase(UpdateDistributedAutonomousDatabaseRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Updates the configuration of the Globally distributed autonomous database.

Declaration
public Task<UpdateDistributedAutonomousDatabaseResponse> UpdateDistributedAutonomousDatabase(UpdateDistributedAutonomousDatabaseRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
UpdateDistributedAutonomousDatabaseRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<UpdateDistributedAutonomousDatabaseResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use UpdateDistributedAutonomousDatabase API.

UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWallet(UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWalletRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Upload the CA signed certificate to the GSM instances and generate wallets for GSM instances of the Globally distributed autonomous database. Customer shall provide the CA signed certificate key details by adding the certificate in request body.

Declaration
public Task<UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWalletResponse> UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWallet(UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWalletRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWalletRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWalletResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use UploadDistributedAutonomousDatabaseSignedCertificateAndGenerateWallet API.

ValidateDistributedAutonomousDatabaseNetwork(ValidateDistributedAutonomousDatabaseNetworkRequest, RetryConfiguration, CancellationToken, HttpCompletionOption)

Validate the network connectivity between components of the globally distributed autonomous database.

Declaration
public Task<ValidateDistributedAutonomousDatabaseNetworkResponse> ValidateDistributedAutonomousDatabaseNetwork(ValidateDistributedAutonomousDatabaseNetworkRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead)
Parameters
Type Name Description
ValidateDistributedAutonomousDatabaseNetworkRequest request

The request object containing the details to send. Required.

RetryConfiguration retryConfiguration

The retry configuration that will be used by to send this request. Optional.

CancellationToken cancellationToken

The cancellation token to cancel this operation. Optional.

HttpCompletionOption completionOption

The completion option for this operation. Optional.

Returns
Type Description
Task<ValidateDistributedAutonomousDatabaseNetworkResponse>

A response object containing details about the completed operation

Examples

Click here to see an example of how to use ValidateDistributedAutonomousDatabaseNetwork API.

Implements

IDisposable
In this article
Back to top