- ELContext - Class in javax.el
-
Context information for expression evaluation.
- ELContext() - Constructor for class javax.el.ELContext
-
- ELContextEvent - Class in javax.el
-
An event which indicates that an
ELContext
has been created.
- ELContextEvent(ELContext) - Constructor for class javax.el.ELContextEvent
-
Constructs an ELContextEvent object to indicate that an
ELContext
has been created.
- ELContextListener - Interface in javax.el
-
The listener interface for receiving notification when an
ELContext
is created.
- ELException - Exception in javax.el
-
Represents any of the exception conditions that can arise during
expression evaluation.
- ELException() - Constructor for exception javax.el.ELException
-
Creates an ELException
with no detail message.
- ELException(String) - Constructor for exception javax.el.ELException
-
Creates an ELException
with the provided detail message.
- ELException(Throwable) - Constructor for exception javax.el.ELException
-
Creates an ELException
with the given cause.
- ELException(String, Throwable) - Constructor for exception javax.el.ELException
-
Creates an ELException with the given detail message and root cause.
- ELResolver - Class in javax.el
-
Enables customization of variable and property resolution behavior for EL
expression evaluation.
- ELResolver() - Constructor for class javax.el.ELResolver
-
- empty(Object) - Static method in class de.odysseus.el.misc.BooleanOperations
-
- EMPTY - Static variable in class de.odysseus.el.tree.impl.ast.AstUnary
-
- eq(Object, Object) - Static method in class de.odysseus.el.misc.BooleanOperations
-
- EQ - Static variable in class de.odysseus.el.tree.impl.ast.AstBinary
-
- equals(Object) - Method in class de.odysseus.el.ObjectValueExpression
-
Two object value expressions are equal if and only if their wrapped objects are equal.
- equals(Object) - Method in class de.odysseus.el.tree.Bindings
-
- equals(Object) - Method in class de.odysseus.el.tree.impl.Builder
-
- equals(Object) - Method in class de.odysseus.el.TreeMethodExpression
-
Expressions are compared using the concept of a structural id:
variable and function names are anonymized such that two expressions with
same tree structure will also have the same structural id and vice versa.
- equals(Object) - Method in class de.odysseus.el.TreeValueExpression
-
Expressions are compared using the concept of a structural id:
variable and function names are anonymized such that two expressions with
same tree structure will also have the same structural id and vice versa.
- equals(Object) - Method in class javax.el.Expression
-
Determines whether the specified object is equal to this
Expression
.
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstBinary
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstBoolean
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstChoice
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstComposite
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstEval
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstFunction
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstMethod
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstNested
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstNode
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstNull
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstNumber
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstProperty
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstString
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstText
-
- eval(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstUnary
-
- Expression - Class in javax.el
-
- Expression() - Constructor for class javax.el.Expression
-
- ExpressionFactory - Class in javax.el
-
- ExpressionFactory() - Constructor for class javax.el.ExpressionFactory
-
- ExpressionFactoryImpl - Class in de.odysseus.el
-
Expression factory implementation.
- ExpressionFactoryImpl() - Constructor for class de.odysseus.el.ExpressionFactoryImpl
-
Create a new expression factory using the default parser and tree cache implementations.
- ExpressionFactoryImpl(Properties) - Constructor for class de.odysseus.el.ExpressionFactoryImpl
-
Create a new expression factory using the default builder and cache implementations.
- ExpressionFactoryImpl(TreeStore) - Constructor for class de.odysseus.el.ExpressionFactoryImpl
-
Create a new expression factory.
- ExpressionNode - Interface in de.odysseus.el.tree
-
Expression node interface.
- ge(Object, Object) - Static method in class de.odysseus.el.misc.BooleanOperations
-
- GE - Static variable in class de.odysseus.el.tree.impl.ast.AstBinary
-
- get(String, Object...) - Static method in class de.odysseus.el.misc.LocalMessages
-
- get(String) - Method in class de.odysseus.el.tree.impl.Cache
-
- get(String) - Method in interface de.odysseus.el.tree.TreeCache
-
Lookup tree
- get(String) - Method in class de.odysseus.el.tree.TreeStore
-
- getBeanProperty(String) - Method in class javax.el.BeanELResolver.BeanProperties
-
- getBuilder() - Method in class de.odysseus.el.tree.TreeStore
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstBinary
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstBracket
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstChoice
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstComposite
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstDot
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstEval
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstFunction
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstLiteral
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstMethod
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstNested
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstText
-
- getCardinality() - Method in class de.odysseus.el.tree.impl.ast.AstUnary
-
- getCardinality() - Method in interface de.odysseus.el.tree.Node
-
Get the node's number of children.
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstBinary
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstBracket
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstChoice
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstComposite
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstEval
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstFunction
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstLiteral
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstMethod
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstNested
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstProperty
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstText
-
- getChild(int) - Method in class de.odysseus.el.tree.impl.ast.AstUnary
-
- getChild(int) - Method in interface de.odysseus.el.tree.Node
-
Get i'th child
- getCommonPropertyType(ELContext, Object) - Method in class de.odysseus.el.util.SimpleResolver
-
- getCommonPropertyType(ELContext, Object) - Method in class javax.el.ArrayELResolver
-
If the base object is a Java language array, returns the most general
type that this resolver accepts for the property
argument.
- getCommonPropertyType(ELContext, Object) - Method in class javax.el.BeanELResolver
-
If the base object is not null
, returns the most
general type that this resolver accepts for the
property
argument.
- getCommonPropertyType(ELContext, Object) - Method in class javax.el.CompositeELResolver
-
Returns the most general type that this resolver accepts for the
property
argument, given a base
object.
- getCommonPropertyType(ELContext, Object) - Method in class javax.el.ELResolver
-
Returns the most general type that this resolver accepts for the
property
argument, given a base
object.
- getCommonPropertyType(ELContext, Object) - Method in class javax.el.ListELResolver
-
If the base object is a list, returns the most general type that
this resolver accepts for the property
argument.
- getCommonPropertyType(ELContext, Object) - Method in class javax.el.MapELResolver
-
If the base object is a map, returns the most general type that
this resolver accepts for the property
argument.
- getCommonPropertyType(ELContext, Object) - Method in class javax.el.ResourceBundleELResolver
-
If the base object is a ResourceBundle, returns the most general type
that this resolver accepts for the property
argument.
- getContext(Class) - Method in class javax.el.ELContext
-
Returns the context object associated with the given key.
- getELContext() - Method in class javax.el.ELContextEvent
-
Returns the ELContext
that was created.
- getELResolver() - Method in class de.odysseus.el.util.SimpleContext
-
Get our resolver.
- getELResolver() - Method in class javax.el.ELContext
-
Retrieves the ELResolver
associated with this context.
- getExpectedType() - Method in class de.odysseus.el.ObjectValueExpression
-
- getExpectedType() - Method in class de.odysseus.el.TreeValueExpression
-
- getExpectedType() - Method in class javax.el.ValueExpression
-
Returns the type the result of the expression will be coerced to
after evaluation.
- getExpressionString() - Method in class de.odysseus.el.ObjectValueExpression
-
Answer null
.
- getExpressionString() - Method in class de.odysseus.el.TreeMethodExpression
-
- getExpressionString() - Method in class de.odysseus.el.TreeValueExpression
-
- getExpressionString() - Method in class javax.el.Expression
-
Returns the original String used to create this Expression
,
unmodified.
- getFeatureDescriptors(ELContext, Object) - Method in class de.odysseus.el.util.SimpleResolver
-
- getFeatureDescriptors(ELContext, Object) - Method in class javax.el.ArrayELResolver
-
Always returns null
, since there is no reason to
iterate through set set of all integers.
- getFeatureDescriptors(ELContext, Object) - Method in class javax.el.BeanELResolver
-
If the base object is not null
, returns an
Iterator
containing the set of JavaBeans properties
available on the given object.
- getFeatureDescriptors(ELContext, Object) - Method in class javax.el.CompositeELResolver
-
Returns information about the set of variables or properties that
can be resolved for the given base
object.
- getFeatureDescriptors(ELContext, Object) - Method in class javax.el.ELResolver
-
Returns information about the set of variables or properties that
can be resolved for the given base
object.
- getFeatureDescriptors(ELContext, Object) - Method in class javax.el.ListELResolver
-
Always returns null
, since there is no reason to
iterate through set set of all integers.
- getFeatureDescriptors(ELContext, Object) - Method in class javax.el.MapELResolver
-
If the base object is a map, returns an Iterator
containing the set of keys available in the Map
.
- getFeatureDescriptors(ELContext, Object) - Method in class javax.el.ResourceBundleELResolver
-
If the base object is a ResourceBundle, returns an Iterator
containing the set of keys available in the ResourceBundle
.
- getFunction(int) - Method in class de.odysseus.el.tree.Bindings
-
Get function by index.
- getFunctionMapper() - Method in class de.odysseus.el.util.SimpleContext
-
Get our function mapper.
- getFunctionMapper() - Method in class javax.el.ELContext
-
Retrieves the FunctionMapper
associated with this
ELContext
.
- getFunctionNodes() - Method in class de.odysseus.el.tree.Tree
-
Get function nodes (in no particular order)
- getIdentifierNodes() - Method in class de.odysseus.el.tree.Tree
-
Get identifier nodes (in no particular order)
- getIndex() - Method in interface de.odysseus.el.tree.FunctionNode
-
Get the unique index of this identifier in the expression (e.g.
- getIndex() - Method in interface de.odysseus.el.tree.IdentifierNode
-
Get the unique index of this identifier in the expression (e.g.
- getIndex() - Method in class de.odysseus.el.tree.impl.ast.AstFunction
-
- getIndex() - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- getLocale() - Method in class javax.el.ELContext
-
- getMethodInfo(Bindings, ELContext, Class<?>, Class<?>[]) - Method in interface de.odysseus.el.tree.ExpressionNode
-
Get method information.
- getMethodInfo(Bindings, ELContext, Class, Class[]) - Method in class de.odysseus.el.tree.impl.ast.AstEval
-
- getMethodInfo(Bindings, ELContext, Class<?>, Class<?>[]) - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- getMethodInfo(Bindings, ELContext, Class<?>, Class<?>[]) - Method in class de.odysseus.el.tree.impl.ast.AstProperty
-
- getMethodInfo(Bindings, ELContext, Class, Class[]) - Method in class de.odysseus.el.tree.impl.ast.AstRightValue
-
- getMethodInfo(Bindings, ELContext, Class, Class[]) - Method in class de.odysseus.el.tree.impl.ast.AstText
-
- getMethodInfo(ELContext) - Method in class de.odysseus.el.TreeMethodExpression
-
Evaluates the expression and answers information about the method
- getMethodInfo(ELContext) - Method in class javax.el.MethodExpression
-
Evaluates the expression relative to the provided context, and
returns information about the actual referenced method.
- getName() - Method in interface de.odysseus.el.tree.FunctionNode
-
Get the full function name
- getName() - Method in interface de.odysseus.el.tree.IdentifierNode
-
Get the identifier name
- getName() - Method in class de.odysseus.el.tree.impl.ast.AstFunction
-
- getName() - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- getName() - Method in class javax.el.MethodInfo
-
Returns the name of the method
- getOperator() - Method in class de.odysseus.el.tree.impl.ast.AstBinary
-
- getOperator() - Method in class de.odysseus.el.tree.impl.ast.AstUnary
-
- getParamCount() - Method in interface de.odysseus.el.tree.FunctionNode
-
Get the number of parameters for this function
- getParamCount() - Method in class de.odysseus.el.tree.impl.ast.AstFunction
-
- getParamTypes() - Method in class javax.el.MethodInfo
-
Returns the parameter types of the method
- getProperty(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstBracket
-
- getProperty(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstDot
-
- getProperty(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstProperty
-
- getPropertyType() - Method in class javax.el.BeanELResolver.BeanProperty
-
- getReadMethod() - Method in class javax.el.BeanELResolver.BeanProperty
-
- getReturnType() - Method in class javax.el.MethodInfo
-
Returns the return type of the method
- getRoot() - Method in class de.odysseus.el.tree.Tree
-
- getStructuralId(Bindings) - Method in interface de.odysseus.el.tree.ExpressionNode
-
Get the canonical expression string for this node.
- getStructuralId(Bindings) - Method in class de.odysseus.el.tree.impl.ast.AstNode
-
- getType(ELContext) - Method in class de.odysseus.el.ObjectValueExpression
-
Answer null
.
- getType(Bindings, ELContext) - Method in interface de.odysseus.el.tree.ExpressionNode
-
- getType(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstEval
-
- getType(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- getType(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstProperty
-
- getType(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstRightValue
-
according to the spec, the result is undefined for rvalues, so answer null
- getType(Bindings, ELContext) - Method in class de.odysseus.el.tree.impl.ast.AstText
-
- getType(ELContext) - Method in class de.odysseus.el.TreeValueExpression
-
Evaluates the expression as an lvalue and answers the result type.
- getType(ELContext, Object, Object) - Method in class de.odysseus.el.util.SimpleResolver
-
- getType(ELContext, Object, Object) - Method in class javax.el.ArrayELResolver
-
If the base object is an array, returns the most general acceptable type
for a value in this array.
- getType(ELContext, Object, Object) - Method in class javax.el.BeanELResolver
-
If the base object is not null
, returns the most
general acceptable type that can be set on this bean property.
- getType(ELContext, Object, Object) - Method in class javax.el.CompositeELResolver
-
- getType(ELContext, Object, Object) - Method in class javax.el.ELResolver
-
- getType(ELContext, Object, Object) - Method in class javax.el.ListELResolver
-
If the base object is a list, returns the most general acceptable type
for a value in this list.
- getType(ELContext, Object, Object) - Method in class javax.el.MapELResolver
-
If the base object is a map, returns the most general acceptable type
for a value in this map.
- getType(ELContext, Object, Object) - Method in class javax.el.ResourceBundleELResolver
-
If the base object is an instance of ResourceBundle
,
return null
, since the resolver is read only.
- getType(ELContext) - Method in class javax.el.ValueExpression
-
- getValue(ELContext) - Method in class de.odysseus.el.ObjectValueExpression
-
Answer the wrapped object, coerced to the expected type.
- getValue(Bindings, ELContext, Class<?>) - Method in interface de.odysseus.el.tree.ExpressionNode
-
Evaluate node.
- getValue(Bindings, ELContext, Class<?>) - Method in class de.odysseus.el.tree.impl.ast.AstNode
-
evaluate and return the (optionally coerced) result.
- getValue(ELContext) - Method in class de.odysseus.el.TreeValueExpression
-
Evaluates the expression as an rvalue and answers the result.
- getValue(ELContext, Object, Object) - Method in class de.odysseus.el.util.SimpleResolver
-
- getValue(ELContext, Object, Object) - Method in class javax.el.ArrayELResolver
-
If the base object is a Java language array, returns the value at the
given index.
- getValue(ELContext, Object, Object) - Method in class javax.el.BeanELResolver
-
If the base object is not null
, returns the current
value of the given property on this bean.
- getValue(ELContext, Object, Object) - Method in class javax.el.CompositeELResolver
-
Attempts to resolve the given property
object on the given
base
object by querying all component resolvers.
- getValue(ELContext, Object, Object) - Method in class javax.el.ELResolver
-
Attempts to resolve the given property
object on the given
base
object.
- getValue(ELContext, Object, Object) - Method in class javax.el.ListELResolver
-
If the base object is a list, returns the value at the given index.
- getValue(ELContext, Object, Object) - Method in class javax.el.MapELResolver
-
If the base object is a map, returns the value associated with the
given key, as specified by the property
argument.
- getValue(ELContext, Object, Object) - Method in class javax.el.ResourceBundleELResolver
-
If the base object is an instance of ResourceBundle
,
the provided property will first be coerced to a String
.
- getValue(ELContext) - Method in class javax.el.ValueExpression
-
Evaluates the expression relative to the provided context, and
returns the resulting value.
- getVariable(int) - Method in class de.odysseus.el.tree.Bindings
-
Get variable by index.
- getVariableMapper() - Method in class de.odysseus.el.util.SimpleContext
-
Get our variable mapper.
- getVariableMapper() - Method in class javax.el.ELContext
-
Retrieves the VariableMapper
associated with this
ELContext
.
- getWriteMethod() - Method in class javax.el.BeanELResolver.BeanProperty
-
- gt(Object, Object) - Static method in class de.odysseus.el.misc.BooleanOperations
-
- GT - Static variable in class de.odysseus.el.tree.impl.ast.AstBinary
-
- setFunction(String, String, Method) - Method in class de.odysseus.el.util.SimpleContext
-
Define a function
- setLocale(Locale) - Method in class javax.el.ELContext
-
Set the Locale
for this instance.
- setPropertyResolved(boolean) - Method in class javax.el.ELContext
-
Called to indicate that a ELResolver
has successfully
resolved a given (base, property) pair.
- setValue(ELContext, Object) - Method in class de.odysseus.el.ObjectValueExpression
-
Throw an exception.
- setValue(Bindings, ELContext, Object) - Method in interface de.odysseus.el.tree.ExpressionNode
-
Assign value.
- setValue(Bindings, ELContext, Object) - Method in class de.odysseus.el.tree.impl.ast.AstEval
-
- setValue(Bindings, ELContext, Object) - Method in class de.odysseus.el.tree.impl.ast.AstIdentifier
-
- setValue(Bindings, ELContext, Object) - Method in class de.odysseus.el.tree.impl.ast.AstProperty
-
- setValue(Bindings, ELContext, Object) - Method in class de.odysseus.el.tree.impl.ast.AstRightValue
-
non-lvalues are always readonly, so throw an exception
- setValue(Bindings, ELContext, Object) - Method in class de.odysseus.el.tree.impl.ast.AstText
-
- setValue(ELContext, Object) - Method in class de.odysseus.el.TreeValueExpression
-
Evaluates the expression as an lvalue and assigns the given value.
- setValue(ELContext, Object, Object, Object) - Method in class de.odysseus.el.util.SimpleResolver
-
- setValue(ELContext, Object, Object, Object) - Method in class javax.el.ArrayELResolver
-
If the base object is a Java language array, attempts to set the
value at the given index with the given value.
- setValue(ELContext, Object, Object, Object) - Method in class javax.el.BeanELResolver
-
If the base object is not null
, attempts to set the
value of the given property on this bean.
- setValue(ELContext, Object, Object, Object) - Method in class javax.el.CompositeELResolver
-
Attempts to set the value of the given property
object on the given base
object.
- setValue(ELContext, Object, Object, Object) - Method in class javax.el.ELResolver
-
Attempts to set the value of the given property
object on the given base
object.
- setValue(ELContext, Object, Object, Object) - Method in class javax.el.ListELResolver
-
If the base object is a list, attempts to set the value at the
given index with the given value.
- setValue(ELContext, Object, Object, Object) - Method in class javax.el.MapELResolver
-
If the base object is a map, attempts to set the value associated with
the given key, as specified by the property
argument.
- setValue(ELContext, Object, Object, Object) - Method in class javax.el.ResourceBundleELResolver
-
- setValue(ELContext, Object) - Method in class javax.el.ValueExpression
-
Evaluates the expression relative to the provided context, and
sets the result to the provided value.
- setVariable(String, ValueExpression) - Method in class de.odysseus.el.util.SimpleContext
-
Define a variable
- setVariable(String, ValueExpression) - Method in class javax.el.VariableMapper
-
Assign a ValueExpression to an EL variable, replacing
any previously assignment to the same variable.
- SimpleContext - Class in de.odysseus.el.util
-
Simple context implementation.
- SimpleContext() - Constructor for class de.odysseus.el.util.SimpleContext
-
Create a context.
- SimpleContext(ELResolver) - Constructor for class de.odysseus.el.util.SimpleContext
-
Create a context, use the specified resolver.
- SimpleResolver - Class in de.odysseus.el.util
-
Simple resolver implementation.
- SimpleResolver(ELResolver, boolean) - Constructor for class de.odysseus.el.util.SimpleResolver
-
Create a resolver capable of resolving top-level identifiers.
- SimpleResolver(ELResolver) - Constructor for class de.odysseus.el.util.SimpleResolver
-
Create a read/write resolver capable of resolving top-level identifiers.
- SimpleResolver(boolean) - Constructor for class de.odysseus.el.util.SimpleResolver
-
Create a resolver capable of resolving top-level identifiers,
bean properties, array values, list values, map values and resource values.
- SimpleResolver() - Constructor for class de.odysseus.el.util.SimpleResolver
-
Create a read/write resolver capable of resolving top-level identifiers,
bean properties, array values, list values, map values and resource values.
- sub(Object, Object) - Static method in class de.odysseus.el.misc.NumberOperations
-
- SUB - Static variable in class de.odysseus.el.tree.impl.ast.AstBinary
-