home *** CD-ROM | disk | FTP | other *** search
- #---------------------------------------------------------------------------
- #
- # Copyright (c) 1992-1996 by Cayenne Software, Inc.
- #
- # This software is furnished under a license and may be used only in
- # accordance with the terms of such license and with the inclusion of
- # the above copyright notice. This software or any other copies thereof
- # may not be provided or otherwise made available to any other person.
- # No title to and ownership of the software is hereby transferred.
- #
- # The information in this software is subject to change without notice
- # and should not be construed as a commitment by Cayenne Software, Inc.
- #
- #---------------------------------------------------------------------------
- #
- # File : @(#)sqlrules /main/hindenburg/1 (1.10)
- # Original date : 7-1992
- # Description : Configuration file containing rules for
- # insert-, delete- and update policies.
- # For more information see the extended
- # description below.
- #
- #---------------------------------------------------------------------------
- #
- # @(#)sqlrules /main/hindenburg/1 4 Nov 1996 Copyright 1992-1996 Cayenne Software, Inc.
- #
- #---------------------------------------------------------------------------
- #
- # Default Referential Integrity
- # possible values 'on' and 'off'
- #
- on
- #
- #---------------------------------------------------------------------------
- #
- # Column discription :
- # relation type : Type of the relation
- # operation : Operation on table
- # table : Role of the table
- # master type : Type of the master table
- # detail type : Type of the detail table
- # source type : Is the detail table derived from a entity(table)
- # detail or a relation
- # policy : Specified policy of a link (i.e. connector)
- # allowed : default = default rule
- # yes = this rule is also allowed
- # no = this rule would make no sense
- # NOTE: per 4(3) policies is only one "default"
- # allowed
- # rule : Rule to be excuted for the specified operation
- # you can add or change the rules
- # (NOTE: if you do, adjust the Tcl templates).
- # If the field contains the value "not_applicable",
- # the rule would make no sense at all for the
- # specified operation.
- #
- # Column values :
- # relation type : optional, total, supersubtype, associative
- # operation : insert, update, delete
- # table : master, detail (i.e. the current table)
- # master type : optional, total, supertype, strong
- # detail type : optional, total, subtype, associative,
- # source type : table, relation
- # policy : none, restrict, nullify, cascade
- # allowed : default, yes, no
- # rule : rej_not_exist,
- # rej_exist,
- # rej_last,
- # rej_last_in_master,
- # ins_in_master,
- # del_in_detail,
- # del_in_master,
- # nullify_detail,
- # upd_in_detail,
- # none,
- # not_applicable
- #
- #-------------------------------------------------------------------------------
- # NOTE : Do not change the column values except the columns "allowed"
- # and "rule".
- #===============================================================================
- #
- # Optional relation
- #
- #-------------------------------------------------------------------------------
- # rela |opera |table |master |detail |source |policy |allowed |rule
- # tion |tion |type |type |type |type | | |
- # type | | | | |detail | | |
- #-------------------------------------------------------------------------------
- optional |insert |master |optional |optional |table |none |default |none
- optional |insert |master |optional |optional |table |restrict |no |rej_not_exist
- optional |insert |master |optional |optional |table |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- optional |insert |master |optional |optional |relation |none |default |none
- optional |insert |master |optional |optional |relation |restrict |no |rej_not_exist
- optional |insert |master |optional |optional |relation |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- optional |insert |detail |optional |optional |table |none |no |not_applicable
- optional |insert |detail |optional |optional |table |restrict |default |rej_not_exist
- optional |insert |detail |optional |optional |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- optional |insert |detail |optional |optional |relation |none |no |none
- optional |insert |detail |optional |optional |relation |restrict |default |rej_not_exist
- optional |insert |detail |optional |optional |relation |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- optional |update |master |optional |optional |table |none |no |none
- optional |update |master |optional |optional |table |restrict |default |rej_exist
- optional |update |master |optional |optional |table |nullify |yes |nullify_detail
- optional |update |master |optional |optional |table |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- optional |update |master |optional |optional |relation |none |no |none
- optional |update |master |optional |optional |relation |restrict |default |rej_exist
- optional |update |master |optional |optional |relation |nullify |no |not_applicable
- optional |update |master |optional |optional |relation |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- optional |update |detail |optional |optional |table |none |no |not_applicable
- optional |update |detail |optional |optional |table |restrict |default |rej_not_exist
- optional |update |detail |optional |optional |table |nullify |no |not_applicable
- optional |update |detail |optional |optional |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- optional |update |detail |optional |optional |relation |none |no |none
- optional |update |detail |optional |optional |relation |restrict |default |rej_not_exist
- optional |update |detail |optional |optional |relation |nullify |no |not_applicable
- optional |update |detail |optional |optional |relation |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- optional |delete |master |optional |optional |table |none |no |none
- optional |delete |master |optional |optional |table |restrict |no |rej_exist
- optional |delete |master |optional |optional |table |nullify |default |nullify_detail
- optional |delete |master |optional |optional |table |cascade |yes |del_in_detail
- #-------------------------------------------------------------------------------
- optional |delete |master |optional |optional |relation |none |no |none
- optional |delete |master |optional |optional |relation |restrict |no |rej_exist
- optional |delete |master |optional |optional |relation |nullify |no |not_applicable
- optional |delete |master |optional |optional |relation |cascade |default |del_in_detail
- #-------------------------------------------------------------------------------
- optional |delete |detail |optional |optional |table |none |default |none
- optional |delete |detail |optional |optional |table |restrict |no |rej_exist
- optional |delete |detail |optional |optional |table |nullify |no |not_applicable
- optional |delete |detail |optional |optional |table |cascade |no |del_in_master
- #-------------------------------------------------------------------------------
- optional |delete |detail |optional |optional |relation |none |default |none
- optional |delete |detail |optional |optional |relation |restrict |no |rej_exist
- optional |delete |detail |optional |optional |relation |nullify |no |not_applicable
- optional |delete |detail |optional |optional |relation |cascade |no |del_in_master
- #
- #===============================================================================
- #
- # Single sided total relation
- #
- #-------------------------------------------------------------------------------
- # rela |opera |table |master |detail |source |policy |allowed |rule
- # tion |tion | |type |type |type | | |
- # type | | | | |detail | | |
- #-------------------------------------------------------------------------------
- total |insert |master |total |optional |table |none |no |none
- total |insert |master |total |optional |table |restrict |default |rej_not_exist
- total |insert |master |total |optional |table |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- total |insert |master |optional |total |table |none |default |none
- total |insert |master |optional |total |table |restrict |no |rej_not_exist
- total |insert |master |optional |total |table |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- total |insert |master |optional |total |relation |none |default |none
- total |insert |master |optional |total |relation |restrict |no |rej_not_exist
- total |insert |master |optional |total |relation |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- total |insert |detail |optional |total |table |none |no |not_applicable
- total |insert |detail |optional |total |table |restrict |default |rej_not_exist
- total |insert |detail |optional |total |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- total |insert |detail |total |optional |table |none |default |none
- total |insert |detail |total |optional |table |restrict |yes |rej_not_exist
- total |insert |detail |total |optional |table |cascade |no |ins_in_master
- #-------------------------------------------------------------------------------
- total |insert |detail |optional |total |relation |none |no |none
- total |insert |detail |optional |total |relation |restrict |default |rej_not_exist
- total |insert |detail |optional |total |relation |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- total |update |master |total |optional |table |none |no |none
- total |update |master |total |optional |table |restrict |default |rej_exist
- total |update |master |total |optional |table |nullify |no |not_applicable
- total |update |master |total |optional |table |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- total |update |master |optional |total |table |none |no |none
- total |update |master |optional |total |table |restrict |default |rej_exist
- total |update |master |optional |total |table |nullify |no |not_applicable
- total |update |master |optional |total |table |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- total |update |master |optional |total |relation |none |no |none
- total |update |master |optional |total |relation |restrict |yes |rej_exist
- total |update |master |optional |total |relation |nullify |no |not_applicable
- total |update |master |optional |total |relation |cascade |default |upd_in_detail
- #-------------------------------------------------------------------------------
- total |update |detail |optional |total |table |none |no |not_applicable
- total |update |detail |optional |total |table |restrict |default |rej_not_exist
- total |update |detail |optional |total |table |nullify |no |not_applicable
- total |update |detail |optional |total |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- total |update |detail |total |optional |table |none |default |none
- total |update |detail |total |optional |table |restrict |no |rej_not_exist
- total |update |detail |total |optional |table |nullify |no |not_applicable
- total |update |detail |total |optional |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- total |update |detail |optional |total |relation |none |no |none
- total |update |detail |optional |total |relation |restrict |default |rej_not_exist
- total |update |detail |optional |total |relation |nullify |no |not_applicable
- total |update |detail |optional |total |relation |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- total |delete |master |total |optional |table |none |no |none
- total |delete |master |total |optional |table |restrict |no |rej_exist
- total |delete |master |total |optional |table |nullify |default |nullify_detail
- total |delete |master |total |optional |table |cascade |no |del_in_detail
- #-------------------------------------------------------------------------------
- total |delete |master |optional |total |table |none |no |none
- total |delete |master |optional |total |table |restrict |yes |rej_exist
- total |delete |master |optional |total |table |nullify |no |not_applicable
- total |delete |master |optional |total |table |cascade |default |del_in_detail
- #-------------------------------------------------------------------------------
- total |delete |master |optional |total |relation |none |no |none
- total |delete |master |optional |total |relation |restrict |no |rej_exist
- total |delete |master |optional |total |relation |nullify |no |not_applicable
- total |delete |master |optional |total |relation |cascade |default |del_in_detail
- #-------------------------------------------------------------------------------
- total |delete |detail |total |optional |table |none |no |none
- total |delete |detail |total |optional |table |restrict |default |rej_last
- total |delete |detail |total |optional |table |nullify |no |not_applicable
- total |delete |detail |total |optional |table |cascade |yes |del_in_master
- #-------------------------------------------------------------------------------
- total |delete |detail |optional |total |table |none |default |none
- total |delete |detail |optional |total |table |restrict |no |rej_exist
- total |delete |detail |optional |total |table |nullify |no |not_applicable
- total |delete |detail |optional |total |table |cascade |no |del_in_master
- #-------------------------------------------------------------------------------
- total |delete |detail |optional |total |relation |none |default |none
- total |delete |detail |optional |total |relation |restrict |no |rej_exist
- total |delete |detail |optional |total |relation |nullify |no |not_applicable
- total |delete |detail |optional |total |relation |cascade |no |del_in_master
- #
- #===============================================================================
- #
- # Multi sided total relation
- #
- #-------------------------------------------------------------------------------
- # rela |opera |table |master |detail |source |policy |allowed |rule
- # tion |tion | |type |type |type | | |
- # type | | | | |detail | | |
- #-------------------------------------------------------------------------------
- total |insert |master |total |total |table |none |no |none
- total |insert |master |total |total |table |restrict |default |rej_not_exist
- total |insert |master |total |total |table |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- total |insert |master |total |total |relation |none |no |none
- total |insert |master |total |total |relation |restrict |default |rej_not_exist
- total |insert |master |total |total |relation |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- total |insert |detail |total |total |table |none |no |none
- total |insert |detail |total |total |table |restrict |default |rej_not_exist
- total |insert |detail |total |total |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- total |insert |detail |total |total |relation |none |no |none
- total |insert |detail |total |total |relation |restrict |yes |rej_not_exist
- total |insert |detail |total |total |relation |cascade |default |ins_in_master
- #-------------------------------------------------------------------------------
- total |update |master |total |total |table |none |no |none
- total |update |master |total |total |table |restrict |default |rej_exist
- total |update |master |total |total |table |nullify |no |not_applicable
- total |update |master |total |total |table |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- total |update |master |total |total |relation |none |no |none
- total |update |master |total |total |relation |restrict |default |rej_exist
- total |update |master |total |total |relation |nullify |no |not_applicable
- total |update |master |total |total |relation |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- total |update |detail |total |total |table |none |no |none
- total |update |detail |total |total |table |restrict |default |rej_not_exist
- total |update |detail |total |total |table |nullify |no |not_applicable
- total |update |detail |total |total |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- total |update |detail |total |total |relation |none |no |none
- total |update |detail |total |total |relation |restrict |yes |rej_not_exist
- total |update |detail |total |total |relation |nullify |no |not_applicable
- total |update |detail |total |total |relation |cascade |default |ins_in_master
- #-------------------------------------------------------------------------------
- total |delete |master |total |total |table |none |no |none
- total |delete |master |total |total |table |restrict |default |rej_exist
- total |delete |master |total |total |table |nullify |no |not_applicable
- total |delete |master |total |total |table |cascade |yes |del_in_detail
- #-------------------------------------------------------------------------------
- total |delete |master |total |total |relation |none |no |none
- total |delete |master |total |total |relation |restrict |default |rej_exist
- total |delete |master |total |total |relation |nullify |no |not_applicable
- total |delete |master |total |total |relation |cascade |yes |del_in_detail
- #-------------------------------------------------------------------------------
- total |delete |detail |total |total |table |none |no |none
- total |delete |detail |total |total |table |restrict |yes |rej_last_in_master
- total |delete |detail |total |total |table |nullify |no |not_applicable
- total |delete |detail |total |total |table |cascade |default |del_in_master
- #-------------------------------------------------------------------------------
- total |delete |detail |total |total |relation |none |no |none
- total |delete |detail |total |total |relation |restrict |yes |rej_last
- total |delete |detail |total |total |relation |nullify |no |not_applicable
- total |delete |detail |total |total |relation |cascade |default |del_in_master
- #
- #===============================================================================
- #
- # Super- Subtype relation
- #
- #-------------------------------------------------------------------------------
- # relation |opera |table |master |detail |source |policy |allowed |rule
- # type |tion | |type |type |type | | |
- # | | | | |detail | |
- #-------------------------------------------------------------------------------
- supersubtype |insert |master |supertype|subtype |table |none |default |none
- supersubtype |insert |master |supertype|subtype |table |restrict |no |rej_not_exist
- supersubtype |insert |master |supertype|subtype |table |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- supersubtype |insert |detail |supertype|subtype |table |none |no |none
- supersubtype |insert |detail |supertype|subtype |table |restrict |default |rej_not_exist
- supersubtype |insert |detail |supertype|subtype |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- supersubtype |update |master |supertype|subtype |table |none |no |none
- supersubtype |update |master |supertype|subtype |table |restrict |default |rej_exist
- supersubtype |update |master |supertype|subtype |table |nullify |no |not_applicable
- supersubtype |update |master |supertype|subtype |table |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- supersubtype |update |detail |supertype|subtype |table |none |no |none
- supersubtype |update |detail |supertype|subtype |table |restrict |default |rej_not_exist
- supersubtype |update |detail |supertype|subtype |table |nullify |no |not_applicable
- supersubtype |update |detail |supertype|subtype |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- #
- # The RI for a delete of an object is handled by the Client i.e. the C++
- # generator generates the code for deleting object. If an object consists of
- # more than one table it will also work.
- #
- supersubtype |delete |master |supertype|subtype |table |none |default |none
- supersubtype |delete |master |supertype|subtype |table |restrict |no |rej_exist
- supersubtype |delete |master |supertype|subtype |table |nullify |no |not_applicable
- supersubtype |delete |master |supertype|subtype |table |cascade |yes |del_in_detail
- #-------------------------------------------------------------------------------
- supersubtype |delete |detail |supertype|subtype |table |none |default |none
- supersubtype |delete |detail |supertype|subtype |table |restrict |no |rej_exist
- supersubtype |delete |detail |supertype|subtype |table |nullify |no |not_applicable
- supersubtype |delete |detail |supertype|subtype |table |cascade |yes |del_in_master
- #
- #===============================================================================
- #
- # Associative Object
- #
- #-------------------------------------------------------------------------------
- # relation |opera |table |master |detail |source |policy |allowed |rule
- # type |tion | |type |type |type | | |
- # | | | | |detail | | |
- #-------------------------------------------------------------------------------
- associative |insert |master |optional |associative |table |none |default |none
- associative |insert |master |optional |associative |table |restrict |no |rej_not_exist
- associative |insert |master |optional |associative |table |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- associative |insert |master |optional |associative |relation |none |default |none
- associative |insert |master |optional |associative |relation |restrict |no |rej_not_exist
- associative |insert |master |optional |associative |relation |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- associative |insert |detail |optional |associative |table |none |no |none
- associative |insert |detail |optional |associative |table |restrict |default |rej_not_exist
- associative |insert |detail |optional |associative |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- associative |insert |detail |optional |associative |relation |none |no |none
- associative |insert |detail |optional |associative |relation |restrict |default |rej_not_exist
- associative |insert |detail |optional |associative |relation |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- associative |update |master |optional |associative |table |none |no |none
- associative |update |master |optional |associative |table |restrict |default |rej_exist
- associative |update |master |optional |associative |table |nullify |no |not_applicable
- associative |update |master |optional |associative |table |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- associative |update |master |optional |associative |relation |none |no |none
- associative |update |master |optional |associative |relation |restrict |default |rej_exist
- associative |update |master |optional |associative |relation |nullify |no |not_applicable
- associative |update |master |optional |associative |relation |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- associative |update |detail |optional |associative |table |none |no |none
- associative |update |detail |optional |associative |table |restrict |default |rej_not_exist
- associative |update |detail |optional |associative |table |nullify |no |not_applicable
- associative |update |detail |optional |associative |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- associative |update |detail |optional |associative |relation |none |no |none
- associative |update |detail |optional |associative |relation |restrict |default |rej_not_exist
- associative |update |detail |optional |associative |relation |nullify |no |not_applicable
- associative |update |detail |optional |associative |relation |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- associative |delete |master |optional |associative |table |none |no |none
- associative |delete |master |optional |associative |table |restrict |no |rej_exist
- associative |delete |master |optional |associative |table |nullify |no |not_applicable
- associative |delete |master |optional |associative |table |cascade |default |del_in_detail
- #-------------------------------------------------------------------------------
- associative |delete |master |optional |associative |relation |none |no |none
- associative |delete |master |optional |associative |relation |restrict |no |rej_exist
- associative |delete |master |optional |associative |relation |nullify |no |not_applicable
- associative |delete |master |optional |associative |relation |cascade |default |del_in_detail
- #-------------------------------------------------------------------------------
- associative |delete |detail |optional |associative |table |none |default |none
- associative |delete |detail |optional |associative |table |restrict |no |rej_exist
- associative |delete |detail |optional |associative |table |nullify |no |not_applicable
- associative |delete |detail |optional |associative |table |cascade |no |del_in_master
- #-------------------------------------------------------------------------------
- associative |delete |detail |optional |associative |relation |none |default |none
- associative |delete |detail |optional |associative |relation |restrict |no |rej_exist
- associative |delete |detail |optional |associative |relation |nullify |no |not_applicable
- associative |delete |detail |optional |associative |relation |cascade |no |del_in_master
- #-------------------------------------------------------------------------------
- associative |insert |master |total |associative |table |none |no |none
- associative |insert |master |total |associative |table |restrict |default |rej_not_exist
- associative |insert |master |total |associative |table |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- associative |insert |master |total |associative |relation |none |no |none
- associative |insert |master |total |associative |relation |restrict |default |rej_not_exist
- associative |insert |master |total |associative |relation |cascade |no |not_applicable
- #-------------------------------------------------------------------------------
- associative |insert |detail |total |associative |table |none |no |none
- associative |insert |detail |total |associative |table |restrict |yes |rej_not_exist
- associative |insert |detail |total |associative |table |cascade |default |ins_in_master
- #-------------------------------------------------------------------------------
- associative |insert |detail |total |associative |relation |none |no |none
- associative |insert |detail |total |associative |relation |restrict |yes |rej_not_exist
- associative |insert |detail |total |associative |relation |cascade |default |ins_in_master
- #-------------------------------------------------------------------------------
- associative |update |master |total |associative |table |none |no |none
- associative |update |master |total |associative |table |restrict |default |rej_exist
- associative |update |master |total |associative |table |nullify |no |not_applicable
- associative |update |master |total |associative |table |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- associative |update |master |total |associative |relation |none |no |none
- associative |update |master |total |associative |relation |restrict |default |rej_exist
- associative |update |master |total |associative |relation |nullify |no |not_applicable
- associative |update |master |total |associative |relation |cascade |yes |upd_in_detail
- #-------------------------------------------------------------------------------
- associative |update |detail |total |associative |table |none |no |none
- associative |update |detail |total |associative |table |restrict |default |rej_not_exist
- associative |update |detail |total |associative |table |nullify |no |not_applicable
- associative |update |detail |total |associative |table |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- associative |update |detail |total |associative |relation |none |no |none
- associative |update |detail |total |associative |relation |restrict |default |rej_not_exist
- associative |update |detail |total |associative |relation |nullify |no |not_applicable
- associative |update |detail |total |associative |relation |cascade |yes |ins_in_master
- #-------------------------------------------------------------------------------
- associative |delete |master |total |associative |table |none |no |none
- associative |delete |master |total |associative |table |restrict |yes |rej_exist
- associative |delete |master |total |associative |table |nullify |no |not_applicable
- associative |delete |master |total |associative |table |cascade |default |del_in_detail
- #-------------------------------------------------------------------------------
- associative |delete |master |total |associative |relation |none |no |none
- associative |delete |master |total |associative |relation |restrict |yes |rej_exist
- associative |delete |master |total |associative |relation |nullify |no |not_applicable
- associative |delete |master |total |associative |relation |cascade |default |del_in_detail
- #-------------------------------------------------------------------------------
- associative |delete |detail |total |associative |table |none |no |none
- associative |delete |detail |total |associative |table |restrict |yes |rej_exist
- associative |delete |detail |total |associative |table |nullify |no |not_applicable
- associative |delete |detail |total |associative |table |cascade |default |del_in_master
- #-------------------------------------------------------------------------------
- associative |delete |detail |total |associative |relation |none |no |none
- associative |delete |detail |total |associative |relation |restrict |yes |rej_exist
- associative |delete |detail |total |associative |relation |nullify |no |not_applicable
- associative |delete |detail |total |associative |relation |cascade |default |del_in_master
-