Skip navigation links
A C D E F G H I J K L M N P R S T U V W 

A

abort(Executor) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
acceptsURL(String) - Method in class com.aliyun.lindorm.client.Driver
 
addBatch() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
addBatch(String) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 

C

call() - Method in interface com.aliyun.lindorm.client.retry.SqlCallable
get a result, or throws an exception if unable to do so.
cancel() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
clearBatch() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
clearBatch() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
clearParameters() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
clearWarnings() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
clearWarnings() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
close() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
close() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
closeOnCompletion() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
com.aliyun.lindorm.analytics.client - package com.aliyun.lindorm.analytics.client
 
com.aliyun.lindorm.client - package com.aliyun.lindorm.client
 
com.aliyun.lindorm.client.pool - package com.aliyun.lindorm.client.pool
 
com.aliyun.lindorm.client.retry - package com.aliyun.lindorm.client.retry
 
com.aliyun.lindorm.phoenix.client - package com.aliyun.lindorm.phoenix.client
 
com.aliyun.lindorm.search.client - package com.aliyun.lindorm.search.client
 
com.aliyun.lindorm.stream.client - package com.aliyun.lindorm.stream.client
 
com.aliyun.lindorm.table.client - package com.aliyun.lindorm.table.client
 
com.aliyun.lindorm.tsdb.client - package com.aliyun.lindorm.tsdb.client
 
commit() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
connect(String, Properties) - Method in class com.aliyun.lindorm.client.Driver
 
connection - Variable in class com.aliyun.lindorm.client.retry.RetryStatement
 
connectWithRetry(String, Properties) - Static method in class com.aliyun.lindorm.client.Driver
 
createArrayOf(String, Object[]) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createBlob() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createClob() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createDataSource(Properties) - Static method in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
createDataSource(Map) - Static method in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
createNClob() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createSQLXML() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createStatement() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createStatement(int, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createStatement(int, int, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
createStruct(String, Object[]) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 

D

Driver - Class in com.aliyun.lindorm.analytics.client
 
Driver() - Constructor for class com.aliyun.lindorm.analytics.client.Driver
 
Driver - Class in com.aliyun.lindorm.client
 
Driver() - Constructor for class com.aliyun.lindorm.client.Driver
 
Driver - Class in com.aliyun.lindorm.phoenix.client
 
Driver() - Constructor for class com.aliyun.lindorm.phoenix.client.Driver
 
Driver - Class in com.aliyun.lindorm.search.client
 
Driver() - Constructor for class com.aliyun.lindorm.search.client.Driver
 
Driver - Class in com.aliyun.lindorm.stream.client
 
Driver() - Constructor for class com.aliyun.lindorm.stream.client.Driver
 
Driver - Class in com.aliyun.lindorm.table.client
preserve old com.aliyun.lindorm.table.client.Driver class name
Driver() - Constructor for class com.aliyun.lindorm.table.client.Driver
 
Driver - Class in com.aliyun.lindorm.tsdb.client
 
Driver() - Constructor for class com.aliyun.lindorm.tsdb.client.Driver
 

E

ExceptionUtils - Class in com.aliyun.lindorm.client.retry
 
execute() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
execute(String) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
execute(String, int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
execute(String, int[]) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
execute(String, String[]) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
executeBatch() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
executeBatch() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
executeQuery() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
executeQuery(String) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
executeUpdate() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
executeUpdate(String) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
executeUpdate(String, int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
executeUpdate(String, int[]) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
executeUpdate(String, String[]) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 

F

findPreparedStatementMethod() - Method in class com.aliyun.lindorm.client.retry.PreparedStatementMethodCall
 

G

getAutoCommit() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getCatalog() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getClientInfo(String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getClientInfo() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getConnection() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getFetchDirection() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getFetchSize() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getGeneratedKeys() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getHoldability() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getMajorVersion() - Method in class com.aliyun.lindorm.client.Driver
 
getMaxFieldSize() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getMaxRetryTimes() - Method in class com.aliyun.lindorm.client.retry.RetryParams
 
getMaxRows() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getMetaData() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getMetaData() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
getMinorVersion() - Method in class com.aliyun.lindorm.client.Driver
 
getMoreResults() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getMoreResults(int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getNetworkTimeout() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getObjectInstance(Object, Name, Context, Hashtable<?, ?>) - Method in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
getParameterMetaData() - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
getParamValues() - Method in class com.aliyun.lindorm.client.retry.PreparedStatementMethodCall
 
getParentLogger() - Method in class com.aliyun.lindorm.client.Driver
 
getPropertyInfo(String, Properties) - Method in class com.aliyun.lindorm.client.Driver
 
getQueryTimeout() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getRawConnection() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getResultSet() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getResultSetConcurrency() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getResultSetHoldability() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getResultSetType() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getRootCause(Throwable) - Static method in class com.aliyun.lindorm.client.retry.ExceptionUtils
 
getSchema() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getTransactionIsolation() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getTypeMap() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getUpdateCount() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
getWarnings() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
getWarnings() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 

H

hasStreamValue() - Method in class com.aliyun.lindorm.client.retry.PreparedStatementMethodCall
 

I

INIT_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
INITIAL_SIZE_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
isClosed() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
isClosed() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
isCloseOnCompletion() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
isConnectionException(Throwable) - Static method in class com.aliyun.lindorm.client.retry.ExceptionUtils
 
isPoolable() - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
isReadOnly() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
isSQLExceptionRetryable(Exception) - Static method in class com.aliyun.lindorm.client.retry.ExceptionUtils
 
isStatementException(Throwable) - Static method in class com.aliyun.lindorm.client.retry.ExceptionUtils
 
isValid(int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
isWrapperFor(Class<?>) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
isWrapperFor(Class<?>) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 

J

jdbcCompliant() - Method in class com.aliyun.lindorm.client.Driver
 

K

KEEP_ALIVE_BETWEEN_TIME_MILLIS_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
KEEP_ALIVE_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 

L

LindormDataSource - Class in com.aliyun.lindorm.client.pool
将Druid连接池包装在内部,并设置默认最佳实践初始化参数
LindormDataSource() - Constructor for class com.aliyun.lindorm.client.pool.LindormDataSource
 
LindormDataSourceFactory - Class in com.aliyun.lindorm.client.pool
使用包装模式将Druid的连接池内置在内部,同时通过shade方式将Druid的打包在内部 避免Druid版本冲突而导致最佳实践无法使用的情况出现
LindormDataSourceFactory() - Constructor for class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 

M

MAX_ACTIVE_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
MAX_EVICTABLE_IDLE_TIME_MILLIS_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
MAX_OPEN_PREPARED_STATEMENTS_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
MAX_POOL_PREPARED_STATEMENT_PER_CONNECTION_SIZE_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
MAX_WAIT_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
MIN_EVICTABLE_IDLE_TIME_MILLIS_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
MIN_IDLE_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 

N

nativeSQL(String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 

P

POOL_PREPARED_STATEMENTS_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
prepareCall(String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
prepareCall(String, int, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
prepareCall(String, int, int, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
PreparedStatementMethodCall - Class in com.aliyun.lindorm.client.retry
record the method function of PreparedStatement to be retried
prepareStatement(String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
prepareStatement(String, int, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
prepareStatement(String, int, int, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
prepareStatement(String, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
prepareStatement(String, int[]) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
prepareStatement(String, String[]) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 

R

releaseSavepoint(Savepoint) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
Retryable - Class in com.aliyun.lindorm.client.retry
 
Retryable() - Constructor for class com.aliyun.lindorm.client.retry.Retryable
 
RetryConnection - Class in com.aliyun.lindorm.client.retry
 
RetryConnection(Connection, String, Properties) - Constructor for class com.aliyun.lindorm.client.retry.RetryConnection
 
RetryParams - Class in com.aliyun.lindorm.client.retry
 
RetryParams(Properties) - Constructor for class com.aliyun.lindorm.client.retry.RetryParams
 
RetryPreparedStatement - Class in com.aliyun.lindorm.client.retry
 
RetryPreparedStatement(PreparedStatement, String, RetryConnection) - Constructor for class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
RetryStatement - Class in com.aliyun.lindorm.client.retry
 
RetryStatement(Statement, RetryConnection) - Constructor for class com.aliyun.lindorm.client.retry.RetryStatement
 
rollback() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
rollback(Savepoint) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 

S

setArray(int, Array) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setAsciiStream(int, InputStream, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setAsciiStream(int, InputStream) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setAsciiStream(int, InputStream, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setAutoCommit(boolean) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setBigDecimal(int, BigDecimal) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBinaryStream(int, InputStream, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBinaryStream(int, InputStream) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBinaryStream(int, InputStream, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBlob(int, Blob) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBlob(int, InputStream) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBlob(int, InputStream, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBoolean(int, boolean) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setByte(int, byte) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setBytes(int, byte[]) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setCatalog(String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setCharacterStream(int, Reader, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setCharacterStream(int, Reader) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setCharacterStream(int, Reader, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setClientInfo(String, String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setClientInfo(Properties) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setClob(int, Clob) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setClob(int, Reader) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setClob(int, Reader, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setCursorName(String) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setDate(int, Date) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setDate(int, Date, Calendar) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setDouble(int, double) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setEscapeProcessing(boolean) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setFetchDirection(int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setFetchSize(int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setFloat(int, float) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setHoldability(int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setInt(int, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setLong(int, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setMaxFieldSize(int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setMaxRows(int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setNCharacterStream(int, Reader) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setNCharacterStream(int, Reader, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setNClob(int, NClob) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setNClob(int, Reader) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setNClob(int, Reader, long) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setNetworkTimeout(Executor, int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setNString(int, String) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setNull(int, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setNull(int, int, String) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setObject(int, Object, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setObject(int, Object) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setObject(int, Object, int, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setPoolable(boolean) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setQueryTimeout(int) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 
setReadOnly(boolean) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setRef(int, Ref) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setRowId(int, RowId) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setSavepoint() - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setSavepoint(String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setSchema(String) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setShort(int, short) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setSQLXML(int, SQLXML) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setString(int, String) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setTime(int, Time) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setTime(int, Time, Calendar) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setTimestamp(int, Timestamp) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setTimestamp(int, Timestamp, Calendar) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
setTransactionIsolation(int) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setTypeMap(Map<String, Class<?>>) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
setUnicodeStream(int, InputStream, int) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
Deprecated.
setURL(int, URL) - Method in class com.aliyun.lindorm.client.retry.RetryPreparedStatement
 
SqlCallable<V> - Interface in com.aliyun.lindorm.client.retry
 
stmt - Variable in class com.aliyun.lindorm.client.retry.RetryStatement
 
STREAM - Static variable in class com.aliyun.lindorm.client.retry.PreparedStatementMethodCall
if the method has stream value which can't be retried

T

TEST_ON_BORROW_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
TEST_ON_RETURN_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
TEST_WHILE_IDLE_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 
TIME_BETWEEN_EVICTION_RUNS_MILLIS_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 

U

unwrap(Class<T>) - Method in class com.aliyun.lindorm.client.retry.RetryConnection
 
unwrap(Class<T>) - Method in class com.aliyun.lindorm.client.retry.RetryStatement
 

V

VALIDATION_QUERY_KEY - Static variable in class com.aliyun.lindorm.client.pool.LindormDataSourceFactory
 

W

waitToRetry(int) - Method in class com.aliyun.lindorm.client.retry.RetryParams
 
A C D E F G H I J K L M N P R S T U V W 
Skip navigation links

Copyright © 2024 Apache Software Foundation. All rights reserved.