-- *****************************************************************
-- QTECH-ENTITY-MIB.mib:  Qtech Entity MIB file
--
-- March 2002, Wuzg
--
-- Copyright (c) 2002 by Qtech Networks Co.,Ltd.
-- All rights reserved.
-- 
-- *****************************************************************
--

QTECH-ENTITY-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        NOTIFICATION-TYPE,
        Integer32
                FROM SNMPv2-SMI
        DisplayString,
        MacAddress
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP,
        NOTIFICATION-GROUP
                FROM SNMPv2-CONF
        qtechMgmt
                FROM QTECH-SMI;

qtechEntityMIB MODULE-IDENTITY
	LAST-UPDATED "200203200000Z"
	ORGANIZATION "Qtech Networks Co.,Ltd."
	CONTACT-INFO
        " 
		    Tel: 4008-111-000 

		    E-mail: service@qtech.com.cn"
	DESCRIPTION
		"This module defines qtech entity mibs."
	REVISION      "200203200000Z"
	DESCRIPTION
		"Initial version of this MIB module."
	::= { qtechMgmt 21}

qtechDeviceMIBObjects OBJECT IDENTIFIER ::= { qtechEntityMIB 1 }


--
-- device information
--
qtechDeviceMaxNumber OBJECT-TYPE
          SYNTAX Integer32
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
              "Max number of devices of the system permitting."
          ::= { qtechDeviceMIBObjects 1 }
        
qtechDeviceInfoTable OBJECT-TYPE
        SYNTAX SEQUENCE OF QtechDeviceInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "List of devices."
        ::= { qtechDeviceMIBObjects 2 }
        
qtechDeviceInfoEntry OBJECT-TYPE
        SYNTAX QtechDeviceInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry of a device information."
        INDEX { qtechDeviceInfoIndex }
        ::= { qtechDeviceInfoTable 1 }
    
QtechDeviceInfoEntry ::=
        SEQUENCE {
	       qtechDeviceInfoIndex Integer32,
	       qtechDeviceInfoDescr DisplayString,
	       qtechDeviceInfoSlotNumber Integer32,
               qtechDevicePowerStatus  INTEGER,
	       qtechDeviceMacAddress MacAddress,
               qtechDevicePriority Integer32,
               qtechDeviceAlias  DisplayString,
               qtechDeviceSWVersion DisplayString,
               qtechDeviceHWVersion DisplayString,
	       qtechDeviceSerialNumber DisplayString,
           qtechDeviceOid   OBJECT IDENTIFIER
        }
        
qtechDeviceInfoIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "An unique value of each devices in system. Its value ranges between
            1 and the value of the object qtechDeviceNumber."
        ::= { qtechDeviceInfoEntry 1 }
              
qtechDeviceInfoDescr OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the device."
        ::= { qtechDeviceInfoEntry 2 }
        
qtechDeviceInfoSlotNumber OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The number of slots exists on the device."
        ::= { qtechDeviceInfoEntry 3 }
        
          
qtechDevicePowerStatus OBJECT-TYPE
          SYNTAX  INTEGER {
                    rpsNoLink   (1), -- no rps link or rps not electrifying,
                    rpsLinkAndNoPower (2), -- rps linked but not electrifying,
                    rpsLinkAndReadyForPower (3), -- rps is ready for power,
                    rpsLinkAndPower (4)  -- rps is serving as a power
                }
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
              "The power status of device"
          ::= { qtechDeviceInfoEntry 4 }
        
qtechDeviceMacAddress OBJECT-TYPE
          SYNTAX  MacAddress
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
              "The physical address of device"
          ::= { qtechDeviceInfoEntry 5 }

qtechDevicePriority OBJECT-TYPE
          SYNTAX  Integer32(1..10)
          MAX-ACCESS read-write
          STATUS current
          DESCRIPTION
              "The device priority value"
          ::= { qtechDeviceInfoEntry 6 }
          
qtechDeviceAlias OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..32))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Alias of the device."
        ::= { qtechDeviceInfoEntry 7 }     


qtechDeviceSWVersion OBJECT-TYPE
        SYNTAX DisplayString (SIZE(1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the device."
        ::= { qtechDeviceInfoEntry 8 }
        
qtechDeviceHWVersion OBJECT-TYPE
        SYNTAX DisplayString (SIZE(1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the device."
        ::= { qtechDeviceInfoEntry 9 }  

qtechDeviceSerialNumber OBJECT-TYPE
        SYNTAX DisplayString (SIZE(1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Serial number of the device."
        ::= { qtechDeviceInfoEntry 10 }
		
qtechDeviceOid OBJECT-TYPE
        SYNTAX OBJECT IDENTIFIER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Oid number of the device."
        ::= { qtechDeviceInfoEntry 11 }
       
--
-- module information  
--
--qtechModuleNumber OBJECT-TYPE
--        SYNTAX Integer32
--        MAX-ACCESS read-only
--        STATUS current
--        DESCRIPTION
--            "Current number of modules in the system."
--        ::= { qtechDeviceMIBObjects 2 }

qtechSlotInfoTable OBJECT-TYPE
        SYNTAX SEQUENCE OF QtechSlotInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "a list of module Entries."
        ::= { qtechDeviceMIBObjects 3 }
    
qtechSlotInfoEntry OBJECT-TYPE
        SYNTAX QtechSlotInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry containing status information about one slot."
        INDEX { qtechSlotInfoDeviceIndex, qtechSlotInfoIndex }
        ::= { qtechSlotInfoTable 1 }

QtechSlotInfoEntry ::= 
        SEQUENCE {
             qtechSlotInfoDeviceIndex Integer32,
             qtechSlotInfoIndex Integer32,
             qtechSlotModuleInfoDescr DisplayString,
             qtechSlotInfoPortNumber Integer32,
             qtechSlotInfoPortMaxNumber Integer32,
             qtechSlotInfoDesc  DisplayString,
             qtechSlotConfigModuleInfoDescr DisplayString,
             qtechSlotUserStatus Integer32,
             qtechSlotSoftwareStatus Integer32,
             qtechSlotSerialNumber DisplayString,
             qtechSlotHWVersion DisplayString
        }
    
qtechSlotInfoDeviceIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The index of the device, that the slot exists on."
        ::= { qtechSlotInfoEntry 1 }
    
qtechSlotInfoIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "A unique value for each slot exist on the device specified by
            the field qtechSlotInfoDeviceIndex, Its value ranges
            between 1 and the value of the solt num  of this device."
        ::= { qtechSlotInfoEntry 2 }
    
qtechSlotModuleInfoDescr OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Descriptions for the module in the Slot. just like 's1902m' etc. It is a 
             unique value for identifing a kind of module.This value will be null string
             if slot is empty is NULL"
        ::= { qtechSlotInfoEntry 3 }
    
qtechSlotInfoPortNumber OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Number of ports on this slot.This value will be 0  if slot is empty"
        ::= { qtechSlotInfoEntry 4 }

qtechSlotInfoPortMaxNumber OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Max number of ports on this slot has possibly."
        ::= { qtechSlotInfoEntry 5 }
                      
qtechSlotInfoDesc OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the slot,the same as the pannel show."
        ::= { qtechSlotInfoEntry 6 }
        
qtechSlotConfigModuleInfoDescr OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the configured module name on the slot, such as 'M8600-48GT/4SFP','NMX-8E1/CE1H',etc.
            This value will be 'none' if module on the slot isn't configured, or 'N/A' if not allowed to configure."
        ::= { qtechSlotInfoEntry 7 }        
        
qtechSlotUserStatus OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "User status of the slot.
	             value      status          	description
			     0          NONE  	  			not configured(for linecard)
			     1          INSTALLED 			configured to install(for linecard)
			     2          UNINSTALLED			configured to uninstall(for linecard)
			     3          NA             		not allowed to configure(for mainboard or Cassette switch)
            "
        ::= { qtechSlotInfoEntry 8 }
        
qtechSlotSoftwareStatus OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Software status of the slot.
	            value       status          		description
				0			NONE            		not running(for all)
				1			OK              		running(for linecard or Cassette switch)
				2			CONFLICT        		confilct with installed module(for linecard)  
				3			REMOVED					module removed(for linecard)
				4			VERSION_IMCOMPATIBLE	version error(for linecard)
				5			CANNOT_STARTUP			can not start(for linecard)
				6			RESETTING				restarting(for linecard)
				7			MASTER            		master board(for mainboard)
				8			BACKUP            		slave board(for mainboard)            
            "
        ::= { qtechSlotInfoEntry 9 } 

qtechSlotSerialNumber OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Serial number of the module in the Slot."
        ::= { qtechSlotInfoEntry 10 }
 
qtechSlotHWVersion OBJECT-TYPE
        SYNTAX DisplayString (SIZE(1..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the slot."
        ::= { qtechSlotInfoEntry 11 }

--
--ModuleTempState
--          
qtechModuleTempStateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF QtechModuleTempStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Table of entrance to module temperature state table."
        ::= { qtechDeviceMIBObjects 4 }
    
qtechModuleTempStateEntry OBJECT-TYPE
        SYNTAX QtechModuleTempStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entrance to module temperature state." 
        INDEX { qtechModuleTempStateDeviceIndex, qtechModuleTempStateIndex }
        ::= { qtechModuleTempStateTable 1 }

QtechModuleTempStateEntry ::= 
        SEQUENCE {
	     qtechModuleTempStateDeviceIndex Integer32, 
             qtechModuleTempStateIndex Integer32,
             qtechModuleTempState  INTEGER
        }

qtechModuleTempStateDeviceIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The index number for the device which the module is in." 
        ::= { qtechModuleTempStateEntry 1 }
  
qtechModuleTempStateIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " The module index number, ranging from 1 to the maximal slot number." 
        ::= { qtechModuleTempStateEntry 2 }
    
qtechModuleTempState OBJECT-TYPE
        SYNTAX INTEGER{
        	tempNormal(1),
        	tempWarning(2)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " The module temperature state." 
        ::= { qtechModuleTempStateEntry 3 }

qtechPowerStateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF QtechPowerStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Table of entrance to the power state." 
        ::= { qtechDeviceMIBObjects 5 }
    
qtechPowerStateEntry OBJECT-TYPE
        SYNTAX QtechPowerStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entrance to the power state." 
        INDEX { qtechPowerStateDeviceIndex, qtechPowerStateIndex }
        ::= { qtechPowerStateTable 1 }

QtechPowerStateEntry ::= 
        SEQUENCE {
	     qtechPowerStateDeviceIndex Integer32,
             qtechPowerStateIndex Integer32,
             qtechPowerState  INTEGER,
             qtechPowerStatePowerDescr  DisplayString
        }

qtechPowerStateDeviceIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
             "The index number for the device which the power is in." 
        ::= { qtechPowerStateEntry 1 }
    
qtechPowerStateIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The power index number."
        ::= { qtechPowerStateEntry 2 }
    
qtechPowerState OBJECT-TYPE
        SYNTAX INTEGER{
        	noLink(1),                 --no exist
        	linkAndNoPower(2),         --exist but no power
        	linkAndReadyForPower(3),   --exist and ready for power
        	linkAndPower(4),           --normal power 
		linkAndPowerAbnormal(5)    --power,but abnormal at fan
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Power state."
        ::= { qtechPowerStateEntry 3 }

qtechPowerStatePowerDescr OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the power."
        ::= { qtechPowerStateEntry 4 }

qtechFanStateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF QtechFanStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Table of entrance to the fan state." 
        ::= { qtechDeviceMIBObjects 6 }
    
qtechFanStateEntry OBJECT-TYPE
        SYNTAX QtechFanStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entrance to the fan state."
        INDEX {  qtechFanStateDeviceIndex, qtechFanStateIndex }
        ::= { qtechFanStateTable 1 }

QtechFanStateEntry ::= 
        SEQUENCE {
	     qtechFanStateDeviceIndex Integer32,
             qtechFanStateIndex Integer32,
             qtechFanState  INTEGER,
             qtechFanStateFanDescr  DisplayString
        }

qtechFanStateDeviceIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The index number for the device which the fan is in."
        ::= { qtechFanStateEntry 1 }
    
qtechFanStateIndex OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Fan index number."  
        ::= { qtechFanStateEntry 2 }
    
qtechFanState OBJECT-TYPE
        SYNTAX INTEGER{
        	work(1),      --fan working
        	stop(2)      --fan stopping or no exist 
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Fan state."  
        ::= { qtechFanStateEntry 3 }
           
qtechFanStateFanDescr OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..32))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Description of the fan."
        ::= { qtechFanStateEntry 4 }
           

qtechEntityMIBTraps OBJECT IDENTIFIER ::= { qtechEntityMIB 2 }      

qtechEntityStateChgDesc OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
          "The description of entity change."
        ::= { qtechEntityMIBTraps 1 }       
        
qtechEntityStatusChange NOTIFICATION-TYPE
        OBJECTS   {qtechEntityStateChgDesc}
        STATUS     current
        DESCRIPTION
                "while status of the entity changed, then this trap will be sent."
        ::= { qtechEntityMIBTraps 2 }                    
        
qtechTemperatureWarningDesc OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..255))
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
          "Description on the temperature state changes." 
        ::= { qtechEntityMIBTraps 3 }       
        
qtechTemperatureWarning NOTIFICATION-TYPE
        OBJECTS   { qtechTemperatureWarningDesc }
        STATUS     current
        DESCRIPTION
            " When the temperature state of this module changes, this Trap will be sent." 
        ::= { qtechEntityMIBTraps 4 }
        
        
-- conformance information

qtechDeviceMIBConformance OBJECT IDENTIFIER ::= { qtechEntityMIB 3 }
qtechDeviceMIBCompliances OBJECT IDENTIFIER ::= { qtechDeviceMIBConformance 1 }
qtechDeviceMIBGroups      OBJECT IDENTIFIER ::= { qtechDeviceMIBConformance 2 }


-- compliance statements

qtechDeviceMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Qtech Device MIB"
        MODULE  -- this module
                MANDATORY-GROUPS { qtechDeviceInfoMIBGroup,
                                   qtechModuleInfoMIBGroup
                 }
                 GROUP      qtechOptionalDevInfoMIBGroup
                 DESCRIPTION
                     "This group is optional for those system which support device priority,alias and macaddress 
                      information"  
                 
                 GROUP      qtechEntityChgDescGroup
                 DESCRIPTION
                     "This group is mandatory only for those system which support entity
                     change notification."  
                                      
                GROUP       qtechDeviceMIBNotificationGroup
                DESCRIPTION
                     "This group is mandatory only for those system which support entity
                     change notification."  
                      
                GROUP   qtechModuleTempStateGroup
		DESCRIPTION  
                     "This group is mandatory when the system supports temperature state detection."   

                GROUP   qtechPowerStateGroup
		DESCRIPTION  
                      "This group is mandatory when the system supports power state identification." 

                GROUP   qtechFanStateGroup
		DESCRIPTION  
                     "This group is mandatory when the system supports fan state identification." 
  
		GROUP  qtechTemperatureWarningDescGroup 
		DESCRIPTION
                      "This group is mandatory when the system supports temperature state notification." 

                GROUP   qtechTemperatureWarningGroup
                DESCRIPTION 
                      "This group is mandatory when the system supports temperature state notification." 

        ::= { qtechDeviceMIBCompliances 1 }
                
-- units of conformance

qtechDeviceInfoMIBGroup OBJECT-GROUP
        OBJECTS {
          qtechDeviceMaxNumber, 
	       qtechDeviceInfoIndex,
	       qtechDeviceInfoDescr,
	       qtechDeviceInfoSlotNumber,
	       qtechDevicePowerStatus
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing device information to a
                Qtech agent."
        ::= { qtechDeviceMIBGroups 1 } 

qtechOptionalDevInfoMIBGroup OBJECT-GROUP
        OBJECTS {
	       qtechDeviceMacAddress,
	       qtechDevicePriority,
	       qtechDeviceAlias,
               qtechDeviceSWVersion,
               qtechDeviceHWVersion,
               qtechDeviceSerialNumber,
               qtechDeviceOid
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing optional device information to a
                Qtech agent."
        ::= { qtechDeviceMIBGroups 2 } 
        
qtechModuleInfoMIBGroup OBJECT-GROUP
        OBJECTS {
             qtechSlotInfoDeviceIndex,
             qtechSlotInfoIndex,
             qtechSlotModuleInfoDescr,
             qtechSlotInfoPortNumber,
             qtechSlotInfoPortMaxNumber,
	     qtechSlotInfoDesc, 
             qtechSlotConfigModuleInfoDescr,
             qtechSlotUserStatus,
             qtechSlotSoftwareStatus,
	     qtechSlotSerialNumber,
	     qtechSlotHWVersion
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing module information to a
                Qtech agent."
        ::= { qtechDeviceMIBGroups 3 }                
                               
qtechEntityChgDescGroup OBJECT-GROUP
        OBJECTS {qtechEntityStateChgDesc}
        STATUS  current
        DESCRIPTION
                "Objects that providing a literal description of entity's change."
        ::= { qtechDeviceMIBGroups 4 }             
        
qtechDeviceMIBNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS {qtechEntityStatusChange}
    STATUS        current
    DESCRIPTION
            "The collection of notifications which used to inform entity general status information"
    ::= { qtechDeviceMIBGroups 5}

qtechModuleTempStateGroup OBJECT-GROUP
        OBJECTS {
	     qtechModuleTempStateDeviceIndex, 
             qtechModuleTempStateIndex,
             qtechModuleTempState
		}
        STATUS  current
        DESCRIPTION
                "Collection of information on temperature state."
        ::= { qtechDeviceMIBGroups 6 }             

qtechPowerStateGroup OBJECT-GROUP
        OBJECTS {
	     qtechPowerStateDeviceIndex,
             qtechPowerStateIndex,
             qtechPowerState,
             qtechPowerStatePowerDescr
		}
        STATUS  current
        DESCRIPTION
                 "Collection of information on power state." 
        ::= { qtechDeviceMIBGroups 7 } 
            
qtechFanStateGroup OBJECT-GROUP
        OBJECTS {
	     qtechFanStateDeviceIndex,
             qtechFanStateIndex,
             qtechFanState,
             qtechFanStateFanDescr
		}
        STATUS  current
        DESCRIPTION
                 "Collection of information on fan state." 
        ::= { qtechDeviceMIBGroups 8 }   

qtechTemperatureWarningDescGroup OBJECT-GROUP
        OBJECTS { qtechTemperatureWarningDesc }
        STATUS  current
        DESCRIPTION
                 "Collection of description on temperature change notification." 
        ::= { qtechDeviceMIBGroups 9 } 

qtechTemperatureWarningGroup NOTIFICATION-GROUP
	NOTIFICATIONS { qtechTemperatureWarning }
	STATUS        current
	DESCRIPTION
             "Collection of temperature change notification." 
    ::= { qtechDeviceMIBGroups 10}
          

-- definitions in RFC 1213 made

        
END
      
