@prefix :        <https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SuperCobraPrototype.ttl#> .
@prefix owl:     <http://www.w3.org/2002/07/owl#> .
@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema:  <http://schema.org/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix xsd:     <http://www.w3.org/2001/XMLSchema#> .
@prefix x3d:     <https://www.web3d.org/specifications/x3d-4.0.xsd#> .
@prefix x3do:    <https://www.web3d.org/specifications/X3dOntology4.0#> .

:X3D a owl:NamedIndividual, x3do:X3D ;
  x3do:hasHead :head ;
  x3do:hasScene :Scene ;
  x3do:profile 'Immersive' ;
  x3do:version '3.3' ;
  x3do:noNamespaceSchemaLocation 'https://www.web3d.org/specifications/x3d-3.3.xsd' .
:head a owl:NamedIndividual, x3do:head ;
  x3do:hasParent :X3D ;
  x3do:hasMeta :meta_1_1, :meta_1_2, :meta_1_3, :meta_1_4, :meta_1_5, :meta_1_6, :meta_1_7, :meta_1_8, :meta_1_9, :meta_1_10, :meta_1_11, :meta_1_12, :meta_1_13, :meta_1_14, :meta_1_15, :meta_1_16, :meta_1_17, :meta_1_18 .
:meta_1_1 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'SuperCobraPrototype.x3d' ;
  x3do:name 'title' .
:meta_1_2 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'Defines a prototype of Supercobra AH-1Z helicopter.' ;
  x3do:name 'description' .
:meta_1_3 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'Jane Wu' ;
  x3do:name 'creator' .
:meta_1_4 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'Don Brutzman' ;
  x3do:name 'creator' .
:meta_1_5 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content '16 January 2001' ;
  x3do:name 'created' .
:meta_1_6 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content '1 December 2024' ;
  x3do:name 'modified' .
:meta_1_7 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'fix model rotations' ;
  x3do:name 'TODO' .
:meta_1_8 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'Avoided recursive loading of SuperCobraPrototype.x3d model by placing the prototype in a separate file, rather than cirular referencing. Problem detected using castle-model-viewer.' ;
  x3do:name 'info' .
:meta_1_9 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/Hughes500HoverInteriorMedium-cd21-no59-10sec.wav' ;
  x3do:name 'reference' .
:meta_1_10 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/FourBladeMainRotorPrototype.x3d' ;
  x3do:name 'reference' .
:meta_1_11 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/RocketPod.x3d' ;
  x3do:name 'reference' .
:meta_1_12 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidLeft.x3d' ;
  x3do:name 'reference' .
:meta_1_13 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidRight.x3d' ;
  x3do:name 'reference' .
:meta_1_14 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/TwoBladeTailRotorPrototype.x3d' ;
  x3do:name 'reference' .
:meta_1_15 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.fas.org/man/dod-101/sys/ac/ah-1.htm' ;
  x3do:name 'reference' .
:meta_1_16 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SuperCobraPrototype.x3d' ;
  x3do:name 'identifier' .
:meta_1_17 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'X3D-Edit 4.0, https://www.web3d.org/x3d/tools/X3D-Edit' ;
  x3do:name 'generator' .
:meta_1_18 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content '../../license.html' ;
  x3do:name 'license' .
:meta dcterms:title "SuperCobraPrototype.x3d" .
:meta dcterms:description "Defines a prototype of Supercobra AH-1Z helicopter." .
:meta dcterms:creator "Jane Wu" .
:meta dcterms:creator "Don Brutzman" .
:meta dcterms:created "16 January 2001" .
:meta dcterms:modified "1 December 2024" .
:meta dcterms:info "Avoided recursive loading of SuperCobraPrototype.x3d model by placing the prototype in a separate file, rather than cirular referencing. Problem detected using castle-model-viewer." .
:meta dcterms:reference "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/Hughes500HoverInteriorMedium-cd21-no59-10sec.wav" .
:meta dcterms:reference "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/FourBladeMainRotorPrototype.x3d" .
:meta dcterms:reference "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/RocketPod.x3d" .
:meta dcterms:reference "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidLeft.x3d" .
:meta dcterms:reference "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidRight.x3d" .
:meta dcterms:reference "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/TwoBladeTailRotorPrototype.x3d" .
:meta dcterms:reference "https://www.fas.org/man/dod-101/sys/ac/ah-1.htm" .
:meta dcterms:identifier "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SuperCobraPrototype.x3d" .
:meta dcterms:generator "X3D-Edit 4.0, https://www.web3d.org/x3d/tools/X3D-Edit" .
:meta dcterms:license "../../license.html" .
:Scene a owl:NamedIndividual, x3do:Scene ;
  x3do:hasParent :X3D ;
  x3do:hasExternProtoDeclare :ExternProtoDeclare_2_1, :ExternProtoDeclare_2_2 ;
  x3do:hasProtoDeclare :ProtoDeclare_2_3 ;
  x3do:hasChildren :Background_2_4, :Anchor_2_5 .
:ExternProtoDeclare_2_1 a owl:NamedIndividual, x3do:ExternProtoDeclare ;
  x3do:hasParent :Scene ;
  x3do:hasField :field_2_1_1 ;
  x3do:name 'FourBladeMainRotor' ;
  x3do:url '"FourBladeMainRotorPrototype.x3d#FourBladeMainRotor" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/FourBladeMainRotorPrototype.x3d#FourBladeMainRotor" "FourBladeMainRotorPrototype.wrl#FourBladeMainRotor" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/FourBladeMainRotorPrototype.wrl#FourBladeMainRotor"' .
:field_2_1_1 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ExternProtoDeclare_2_1 ;
  x3do:accessType 'inputOnly' ;
  x3do:appinfo 'enable or disable rotor rotation' ;
  x3do:name 'rotationOn' ;
  x3do:type 'SFBool' .
:ExternProtoDeclare_2_2 a owl:NamedIndividual, x3do:ExternProtoDeclare ;
  x3do:hasParent :Scene ;
  x3do:hasField :field_2_2_1 ;
  x3do:name 'TwoBladeTailRotor' ;
  x3do:url '"TwoBladeTailRotorPrototype.x3d#TwoBladeTailRotor" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/TwoBladeTailRotorPrototype.x3d#TwoBladeTailRotor" "TwoBladeTailRotorPrototype.wrl#TwoBladeTailRotor" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/TwoBladeTailRotorPrototype.wrl#TwoBladeTailRotor"' .
:field_2_2_1 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ExternProtoDeclare_2_2 ;
  x3do:accessType 'inputOnly' ;
  x3do:name 'rotationOn' ;
  x3do:type 'SFBool' .
:ProtoDeclare_2_3 a owl:NamedIndividual, x3do:ProtoDeclare ;
  x3do:hasParent :Scene ;
  x3do:hasProtoInterface :ProtoInterface_2_3_1 ;
  x3do:hasProtoBody :ProtoBody_2_3_2 ;
  x3do:appinfo 'Prototype declaration for SuperCobra helicopter' ;
  x3do:name 'SuperCobra' .
:ProtoInterface_2_3_1 a owl:NamedIndividual, x3do:ProtoInterface ;
  x3do:hasParent :ProtoDeclare_2_3 ;
  x3do:hasField :field_2_3_1_1, :field_2_3_1_2, :field_2_3_1_3, :field_2_3_1_4, :field_2_3_1_5, :field_2_3_1_6, :field_2_3_1_7, :field_2_3_1_8 .
:field_2_3_1_1 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'initializeOnly' ;
  x3do:appinfo 'color of tail boom' ;
  x3do:name 'tailBoomColor' ;
  x3do:type 'SFNode' .
:field_2_3_1_2 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'initializeOnly' ;
  x3do:appinfo 'color of tail boom drive shaft' ;
  x3do:name 'tailRotorDriveShaftColor' ;
  x3do:type 'SFNode' .
:field_2_3_1_3 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'initializeOnly' ;
  x3do:appinfo 'color of horizontal stabilizer' ;
  x3do:name 'horizontalStabilizerColor' ;
  x3do:type 'SFNode' .
:field_2_3_1_4 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'initializeOnly' ;
  x3do:appinfo 'color of fuselage' ;
  x3do:name 'fuselageColor' ;
  x3do:type 'SFNode' .
:field_2_3_1_5 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'initializeOnly' ;
  x3do:appinfo 'color of cockpit' ;
  x3do:name 'cockpitColor' ;
  x3do:type 'SFNode' .
:field_2_3_1_6 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'initializeOnly' ;
  x3do:appinfo 'color of cowling' ;
  x3do:name 'cowlingColor' ;
  x3do:type 'SFNode' .
:field_2_3_1_7 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'initializeOnly' ;
  x3do:appinfo 'name of specific helicopter' ;
  x3do:name 'helicopterName' ;
  x3do:type 'SFString' ;
  x3do:value 'Super Cobra' .
:field_2_3_1_8 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :ProtoInterface_2_3_1 ;
  x3do:accessType 'inputOnly' ;
  x3do:appinfo 'input event indicating that the aircraft is in flight' ;
  x3do:name 'inFlight' ;
  x3do:type 'SFBool' .
:ProtoBody_2_3_2 a owl:NamedIndividual, x3do:ProtoBody ;
  x3do:hasParent :ProtoDeclare_2_3 ;
  x3do:hasChildren :Group_2_3_2_1 ;
  x3do:hasROUTE :ROUTE_2_3_2_2, :ROUTE_2_3_2_3, :ROUTE_2_3_2_4, :ROUTE_2_3_2_5, :ROUTE_2_3_2_6, :ROUTE_2_3_2_7, :ROUTE_2_3_2_8, :ROUTE_2_3_2_9, :ROUTE_2_3_2_10 .
:Group_2_3_2_1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:hasChildren :HeloWorldInfo, :HeloNameViewpoint, :LOD_2_3_2_1_3, :InFlightStatusScript, :Sound_2_3_2_1_5, :TailBoom, :FuselageBody, :FuselageBottom, :Cowling, :Transform_2_3_2_1_10, :Transform_2_3_2_1_11, :Transform_2_3_2_1_12, :Transform_2_3_2_1_13, :Transform_2_3_2_1_14 .
:HeloWorldInfo a owl:NamedIndividual, x3do:WorldInfo ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasIS :IS_2_3_2_1_1_1 ;
  x3do:DEF 'HeloWorldInfo' .
:IS_2_3_2_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :HeloWorldInfo ;
  x3do:hasConnect :connect_2_3_2_1_1_1_1 .
:connect_2_3_2_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_1_1 ;
  x3do:nodeField 'title' ;
  x3do:protoField 'helicopterName' .
:HeloNameViewpoint a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasIS :IS_2_3_2_1_2_1 ;
  x3do:DEF 'HeloNameViewpoint' ;
  x3do:description 'helicopter name overridden by protodeclare field' ;
  x3do:orientation ( 0 1 0 -1.57 ) ;
  x3do:position ( -20 2 0 ) .
:IS_2_3_2_1_2_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :HeloNameViewpoint ;
  x3do:hasConnect :connect_2_3_2_1_2_1_1 .
:connect_2_3_2_1_2_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_2_1 ;
  x3do:nodeField 'description' ;
  x3do:protoField 'helicopterName' .
:LOD_2_3_2_1_3 a owl:NamedIndividual, x3do:LOD ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :DetailViewpoint, :WorldInfo_2_3_2_1_3_2 ;
  x3do:range ( 400 ) .
:DetailViewpoint a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :LOD_2_3_2_1_3 ;
  x3do:hasChildren :Viewpoint_2_3_2_1_3_1_1, :Viewpoint_2_3_2_1_3_1_2, :Viewpoint_2_3_2_1_3_1_3, :Viewpoint_2_3_2_1_3_1_4, :Viewpoint_2_3_2_1_3_1_5, :Viewpoint_2_3_2_1_3_1_6 ;
  x3do:DEF 'DetailViewpoint' .
:Viewpoint_2_3_2_1_3_1_1 a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :DetailViewpoint ;
  x3do:description 'SuperCobra Right' ;
  x3do:position ( 0 2 15 ) .
:Viewpoint_2_3_2_1_3_1_2 a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :DetailViewpoint ;
  x3do:description 'SuperCobra Front' ;
  x3do:orientation ( 0 1 0 1.57 ) ;
  x3do:position ( 15 2 0 ) .
:Viewpoint_2_3_2_1_3_1_3 a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :DetailViewpoint ;
  x3do:description 'SuperCobra Left' ;
  x3do:orientation ( 0 1 0 3.14 ) ;
  x3do:position ( 0 2 -15 ) .
:Viewpoint_2_3_2_1_3_1_4 a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :DetailViewpoint ;
  x3do:description 'SuperCobra Behind' ;
  x3do:orientation ( 0 1 0 4.71 ) ;
  x3do:position ( -15 2 0 ) .
:Viewpoint_2_3_2_1_3_1_5 a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :DetailViewpoint ;
  x3do:description 'SuperCobra Top' ;
  x3do:orientation ( -0.51 0.83 0.22 1.24 ) ;
  x3do:position ( 10 10 6 ) .
:Viewpoint_2_3_2_1_3_1_6 a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :DetailViewpoint ;
  x3do:description 'SuperCobra Bottom' ;
  x3do:orientation ( 0.82 0.22 -0.53 0.94 ) ;
  x3do:position ( 0 -12 10 ) .
:WorldInfo_2_3_2_1_3_2 a owl:NamedIndividual, x3do:WorldInfo ;
  x3do:hasParent :LOD_2_3_2_1_3 ;
  x3do:info '"null node"' .
:InFlightStatusScript a owl:NamedIndividual, x3do:Script ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasField :field_2_3_2_1_4_1, :field_2_3_2_1_4_2 ;
  x3do:hasIS :IS_2_3_2_1_4_3 ;
  x3do:DEF 'InFlightStatusScript' ;
  x3do:sourceCode """
ecmascript:

function inFlight(value, ts) {

   status = value;

}
""" .
:field_2_3_2_1_4_1 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :InFlightStatusScript ;
  x3do:accessType 'inputOnly' ;
  x3do:name 'inFlight' ;
  x3do:type 'SFBool' .
:field_2_3_2_1_4_2 a owl:NamedIndividual, x3do:field ;
  x3do:hasParent :InFlightStatusScript ;
  x3do:accessType 'outputOnly' ;
  x3do:name 'status' ;
  x3do:type 'SFBool' .
:IS_2_3_2_1_4_3 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :InFlightStatusScript ;
  x3do:hasConnect :connect_2_3_2_1_4_3_1 .
:connect_2_3_2_1_4_3_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_4_3 ;
  x3do:nodeField 'inFlight' ;
  x3do:protoField 'inFlight' .
:Sound_2_3_2_1_5 a owl:NamedIndividual, x3do:Sound ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasSource :HeloFlyingAudioClip ;
  x3do:direction ( 1.0 1.0 1.0 ) ;
  x3do:maxBack 200.0 ;
  x3do:maxFront 200.0 ;
  x3do:minBack 20.0 ;
  x3do:minFront 20.0 .
:HeloFlyingAudioClip a owl:NamedIndividual, x3do:AudioClip ;
  x3do:hasParent :Sound_2_3_2_1_5 ;
  x3do:DEF 'HeloFlyingAudioClip' ;
  x3do:description 'helicopter flight sound' ;
  x3do:url '"../../AircraftHelicopters/AH1SuperCobraUnitedStates/Hughes500HoverInteriorMedium-cd21-no59-10sec.wav" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/Hughes500HoverInteriorMedium-cd21-no59-10sec.wav"' .
:TailBoom a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :Transform_2_3_2_1_6_1, :Shape_2_3_2_1_6_2, :Transform_2_3_2_1_6_3, :Transform_2_3_2_1_6_4, :VerticalFin, :Transform_2_3_2_1_6_6 ;
  x3do:DEF 'TailBoom' ;
  x3do:rotation ( 0 0 -1 1.66 ) ;
  x3do:scale ( 1.2 1.2 1.0 ) ;
  x3do:translation ( -7.8 0.78 0.0 ) .
:Transform_2_3_2_1_6_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :TailBoom ;
  x3do:hasChildren :TailBoomShape ;
  x3do:rotation ( 0 1 0 1.57 ) .
:TailBoomShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_6_1 ;
  x3do:hasIS :IS_2_3_2_1_6_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_6_1_1_2 ;
  x3do:DEF 'TailBoomShape' .
:IS_2_3_2_1_6_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :TailBoomShape ;
  x3do:hasConnect :connect_2_3_2_1_6_1_1_1_1 .
:connect_2_3_2_1_6_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_6_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'tailBoomColor' .
:Extrusion_2_3_2_1_6_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :TailBoomShape ;
  x3do:convex false ;
  x3do:creaseAngle 0.8 ;
  x3do:crossSection ( 0.4 -0.5 -0.4 -0.5 -0.465 -0.465 -0.5 -0.4 -0.5 0.4 -0.465 0.465 -0.4 0.5 0.4 0.5 0.465 0.465 0.5 0.4 0.5 -0.4 0.465 -0.465 0.4 -0.5 ) ;
  x3do:endCap false ;
  x3do:orientation ( 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 ) ;
  x3do:scale ( 0.10 0.10 0.15 0.15 0.20 0.20 0.25 0.25 0.30 0.30 0.35 0.35 0.40 0.40 0.45 0.45 0.475 0.475 0.50 0.50 0.525 0.525 0.55 0.55 0.565 0.565 0.575 0.575 0.58 0.58 0.6 0.6 ) ;
  x3do:solid false ;
  x3do:spine ( 0.00 0.00 0.00 0.00 0.05 0.00 0.00 0.10 0.00 0.00 0.20 0.00 0.00 0.30 0.00 0.00 0.40 0.00 0.00 0.80 0.00 0.00 1.00 0.00 0.00 2.00 0.00 0.00 3.00 0.00 0.00 3.25 0.00 0.00 3.50 0.00 0.00 3.75 0.00 0.00 4.00 0.00 0.00 4.25 0.00 0.00 4.50 0.00 ) .
:Shape_2_3_2_1_6_2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :TailBoom ;
  x3do:hasAppearance :Appearance_2_3_2_1_6_2_1 ;
  x3do:hasGeometry :Sphere_2_3_2_1_6_2_2 .
:Appearance_2_3_2_1_6_2_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_6_2 ;
  x3do:hasMaterial :Material_2_3_2_1_6_2_1_1 .
:Material_2_3_2_1_6_2_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_6_2_1 ;
  x3do:emissiveColor ( 1.0 1.0 1.0 ) .
:Sphere_2_3_2_1_6_2_2 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_2_1_6_2 ;
  x3do:radius .04 .
:Transform_2_3_2_1_6_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :TailBoom ;
  x3do:hasChildren :Group_2_3_2_1_6_3_1 ;
  x3do:center ( 0.0 2.2 0.0 ) ;
  x3do:rotation ( 0.0 0.0 1.0 0.03 ) ;
  x3do:translation ( -0.3 1.0 0.0 ) .
:Group_2_3_2_1_6_3_1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_1_6_3 ;
  x3do:hasChildren :TailRotorDriveShaftShape .
:TailRotorDriveShaftShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Group_2_3_2_1_6_3_1 ;
  x3do:hasIS :IS_2_3_2_1_6_3_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_6_3_1_1_2 ;
  x3do:DEF 'TailRotorDriveShaftShape' .
:IS_2_3_2_1_6_3_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :TailRotorDriveShaftShape ;
  x3do:hasConnect :connect_2_3_2_1_6_3_1_1_1_1 .
:connect_2_3_2_1_6_3_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_6_3_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'tailRotorDriveShaftColor' .
:Extrusion_2_3_2_1_6_3_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :TailRotorDriveShaftShape ;
  x3do:ccw false ;
  x3do:creaseAngle 1.5 ;
  x3do:crossSection ( -0.03 0 -0.0276 -0.0114 -0.0213 -0.0213 -0.0114 -0.0276 0 -0.03 0.0114 -0.0276 0.0213 -0.0213 0.0276 -0.0114 0.03 0 0.0276 0.0114 0.0213 0.0213 0.0114 0.0276 0 0.03 -0.0114 0.0276 -0.0213 0.0213 -0.0276 0.0114 -0.03 0 ) ;
  x3do:scale ( 2 2 2.3 2.3 2 2 ) ;
  x3do:spine ( -1.16 -1.0 0.0 0.0 0.0 0.0 0.0 3.6 0.0 ) .
:Transform_2_3_2_1_6_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :TailBoom ;
  x3do:hasChildren :Transform_2_3_2_1_6_4_1, :LeftVerticalStabilizer, :RightVerticalStabilizer ;
  x3do:rotation ( 0.58 0.58 0.58 2.09 ) ;
  x3do:translation ( 0 0.1 0 ) .
:Transform_2_3_2_1_6_4_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_6_4 ;
  x3do:hasChildren :HorizontalStabilizerShape ;
  x3do:rotation ( 0 0 1 3.14 ) .
:HorizontalStabilizerShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_6_4_1 ;
  x3do:hasIS :IS_2_3_2_1_6_4_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_6_4_1_1_2 ;
  x3do:DEF 'HorizontalStabilizerShape' .
:IS_2_3_2_1_6_4_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :HorizontalStabilizerShape ;
  x3do:hasConnect :connect_2_3_2_1_6_4_1_1_1_1 .
:connect_2_3_2_1_6_4_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_6_4_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'horizontalStabilizerColor' .
:Extrusion_2_3_2_1_6_4_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :HorizontalStabilizerShape ;
  x3do:convex false ;
  x3do:creaseAngle 0.8 ;
  x3do:crossSection ( -2.7 0.0 -2.6 0.02 -2.5 0.04 -2.4 0.045 -2.32 0.04 -0.5 0.0 -2.32 -0.04 -2.4 -0.045 -2.5 -0.04 -2.6 -0.02 -2.7 0.0 ) ;
  x3do:scale ( 0.14 1.0 0.29 1.0 0.14 1.0 ) ;
  x3do:solid false ;
  x3do:spine ( 0.0 -0.85 0.0 0.0 0.0 0.0 0.0 0.85 0.0 ) .
:LeftVerticalStabilizer a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_6_4 ;
  x3do:hasChildren :VerticalStabilizerShape ;
  x3do:DEF 'LeftVerticalStabilizer' ;
  x3do:rotation ( 1 0 0 -1.57 ) ;
  x3do:translation ( -0.05 -0.85 0.325 ) .
:VerticalStabilizerShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :LeftVerticalStabilizer ;
  x3do:hasIS :IS_2_3_2_1_6_4_2_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_6_4_2_1_2 ;
  x3do:DEF 'VerticalStabilizerShape' .
:IS_2_3_2_1_6_4_2_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :VerticalStabilizerShape ;
  x3do:hasConnect :connect_2_3_2_1_6_4_2_1_1_1 .
:connect_2_3_2_1_6_4_2_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_6_4_2_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'tailBoomColor' .
:IndexedFaceSet_2_3_2_1_6_4_2_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :VerticalStabilizerShape ;
  x3do:hasCoord :Coordinate_2_3_2_1_6_4_2_1_2_1 ;
  x3do:convex false ;
  x3do:coordIndex ( 0 1 2 3 4 5 -1 6 11 10 9 8 7 -1 0 6 7 1 -1 1 7 8 2 -1 2 8 9 3 -1 3 9 10 4 -1 0 5 11 6 -1 5 4 10 11 -1 ) .
:Coordinate_2_3_2_1_6_4_2_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_6_4_2_1_2 ;
  x3do:point ( 0.1 0.15 0.0 0.3 0.15 0.0 0.425 0.325 0.0 0.275 0.6 0.0 0.05 0.6 0.0 0.125 0.3 0.0 0.1 0.15 -0.04 0.3 0.15 -0.02 0.425 0.325 -0.02 0.275 0.6 -0.02 0.05 0.6 -0.04 0.125 0.3 -0.04 ) .
:RightVerticalStabilizer a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_6_4 ;
  x3do:hasChildren :VerticalStabilizerShape-USE-1 ;
  x3do:DEF 'RightVerticalStabilizer' ;
  x3do:rotation ( 1 0 0 -1.57 ) ;
  x3do:translation ( -0.05 0.85 0.325 ) .
:VerticalStabilizerShape-USE-1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :RightVerticalStabilizer ;
  owl:sameAs :VerticalStabilizerShape . # DEF matching this USE
:VerticalFin a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :TailBoom ;
  x3do:hasChildren :VerticalFinShape, :Transform_2_3_2_1_6_5_2 ;
  x3do:DEF 'VerticalFin' ;
  x3do:rotation ( 0 0 1 1.57 ) ;
  x3do:scale ( 3.5 3.5 2.5 ) ;
  x3do:translation ( 1.45 0 0 ) .
:VerticalFinShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :VerticalFin ;
  x3do:hasIS :IS_2_3_2_1_6_5_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_6_5_1_2 ;
  x3do:DEF 'VerticalFinShape' .
:IS_2_3_2_1_6_5_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :VerticalFinShape ;
  x3do:hasConnect :connect_2_3_2_1_6_5_1_1_1 .
:connect_2_3_2_1_6_5_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_6_5_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'tailBoomColor' .
:IndexedFaceSet_2_3_2_1_6_5_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :VerticalFinShape ;
  x3do:hasCoord :Coordinate_2_3_2_1_6_5_1_2_1 ;
  x3do:convex false ;
  x3do:coordIndex ( 0 1 2 3 4 5 6 7 -1 8 15 14 13 12 11 10 9 -1 8 9 1 0 -1 9 10 2 1 -1 10 11 3 2 -1 11 12 4 3 -1 12 13 5 4 -1 5 13 14 6 -1 6 14 15 7 -1 0 7 15 8 -1 ) .
:Coordinate_2_3_2_1_6_5_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_6_5_1_2 ;
  x3do:point ( 0.1 0.375 0.01 0.125 0.355 0.01 0.175 0.33 0.01 0.3 0.325 0.02 0.35 0.35 0.02 0.375 0.4 0.02 0.0 0.8 0.02 -0.1 0.7 0.01 0.1 0.375 -0.01 0.125 0.355 -0.01 0.175 0.33 -0.01 0.3 0.325 -0.02 0.35 0.35 -0.02 0.375 0.4 -0.02 0.0 0.8 -0.02 -0.1 0.7 -0.01 ) .
:Transform_2_3_2_1_6_5_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :VerticalFin ;
  x3do:hasChildren :Shape_2_3_2_1_6_5_2_1, :Transform_2_3_2_1_6_5_2_2 ;
  x3do:rotation ( 0 0 -1 1.05 ) ;
  x3do:translation ( 0.07 0.29 0.0 ) .
:Shape_2_3_2_1_6_5_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_6_5_2 ;
  x3do:hasAppearance :Gray ;
  x3do:hasGeometry :Cylinder_2_3_2_1_6_5_2_1_2 .
:Gray a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_6_5_2_1 ;
  x3do:hasMaterial :Material_2_3_2_1_6_5_2_1_1_1 ;
  x3do:DEF 'Gray' .
:Material_2_3_2_1_6_5_2_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Gray ;
  x3do:diffuseColor ( .25 .25 .25 ) .
:Cylinder_2_3_2_1_6_5_2_1_2 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_2_1_6_5_2_1 ;
  x3do:height 0.2 ;
  x3do:radius 0.008 .
:Transform_2_3_2_1_6_5_2_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_6_5_2 ;
  x3do:hasChildren :Shape_2_3_2_1_6_5_2_2_1 ;
  x3do:rotation ( 0 0 1 2.62 ) ;
  x3do:translation ( -0.0075 -0.11 0 ) .
:Shape_2_3_2_1_6_5_2_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_6_5_2_2 ;
  x3do:hasAppearance :Gray-USE-1 ;
  x3do:hasGeometry :Cylinder_2_3_2_1_6_5_2_2_1_2 .
:Gray-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_6_5_2_2_1 ;
  owl:sameAs :Gray . # DEF matching this USE
:Cylinder_2_3_2_1_6_5_2_2_1_2 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_2_1_6_5_2_2_1 ;
  x3do:height 0.04 ;
  x3do:radius 0.008 .
:Transform_2_3_2_1_6_6 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :TailBoom ;
  x3do:hasChildren :TailRotor ;
  x3do:translation ( -1.25 0.0 0.25 ) .
:TailRotor a owl:NamedIndividual, x3do:ProtoInstance ;
  x3do:hasParent :Transform_2_3_2_1_6_6 ;
  x3do:DEF 'TailRotor' ;
  x3do:name 'TwoBladeTailRotor' .
:FuselageBody a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :MainFuselageBody, :Transform_2_3_2_1_7_2, :Transform_2_3_2_1_7_3, :Cockpit, :Transform_2_3_2_1_7_5, :Transform_2_3_2_1_7_6, :Transform_2_3_2_1_7_7, :Transform_2_3_2_1_7_8 ;
  x3do:DEF 'FuselageBody' ;
  x3do:rotation ( 0 1 0 -1.57 ) ;
  x3do:translation ( 0.4 1.78 0.0 ) .
:MainFuselageBody a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :MainFuselageShape ;
  x3do:DEF 'MainFuselageBody' .
:MainFuselageShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :MainFuselageBody ;
  x3do:hasIS :IS_2_3_2_1_7_1_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_7_1_1_2 ;
  x3do:DEF 'MainFuselageShape' .
:IS_2_3_2_1_7_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :MainFuselageShape ;
  x3do:hasConnect :connect_2_3_2_1_7_1_1_1_1 .
:connect_2_3_2_1_7_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:IndexedFaceSet_2_3_2_1_7_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :MainFuselageShape ;
  x3do:hasCoord :Coordinate_2_3_2_1_7_1_1_2_1 ;
  x3do:coordIndex ( 7 6 5 4 3 2 1 0 -1 0 1 2 3 13 12 11 10 9 8 -1 10 11 12 13 23 22 21 20 -1 14 15 16 17 18 19 4 5 6 7 -1 24 25 26 27 19 18 17 16 -1 0 8 14 7 -1 20 21 22 23 31 30 29 28 -1 27 26 25 24 32 33 34 35 -1 28 29 30 31 39 38 37 36 -1 35 34 33 32 40 41 42 43 -1 9 10 20 24 16 15 -1 20 28 32 24 -1 28 36 40 32 -1 43 42 41 40 36 37 38 39 -1 ) ;
  x3do:creaseAngle 1.57 .
:Coordinate_2_3_2_1_7_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_7_1_1_2 ;
  x3do:point ( -0.025 0.0 3.25 -0.3 0.0 2.0 -0.55 0.0 0.5 -0.6 0.0 -0.5 0.6 0.0 -0.5 0.55 0.0 0.5 0.3 0.0 2.0 0.025 0.0 3.25 -0.05 -1.0 3.5 -0.05 -1.0 3.0 -0.3 -1.0 3.0 -0.5 -1.0 2.0 -0.55 -1.0 0.0 -0.56 -1.0 -0.5 0.05 -1.0 3.5 0.05 -1.0 3.0 0.3 -1.0 3.0 0.5 -1.0 2.0 0.55 -1.0 0.0 0.56 -1.0 -0.5 -0.3 -1.7 3.0 -0.5 -1.9 2.0 -0.55 -1.9 0.0 -0.56 -1.9 -0.5 0.3 -1.7 3.0 0.5 -1.9 2.0 0.55 -1.9 0.0 0.56 -1.9 -0.5 -0.275 -1.76 3.0 -0.475 -1.96 2.0 -0.525 -1.96 0.0 -0.535 -1.96 -0.5 0.275 -1.76 3.0 0.475 -1.96 2.0 0.525 -1.96 0.0 0.535 -1.96 -0.5 -0.2 -1.8 3.0 -0.4 -2.0 2.0 -0.45 -2.0 0.0 -0.46 -2.0 -0.5 0.2 -1.8 3.0 0.4 -2.0 2.0 0.45 -2.0 0.0 0.46 -2.0 -0.5 ) .
:Transform_2_3_2_1_7_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :Engine ;
  x3do:rotation ( 0 1 0 0.15 ) ;
  x3do:scale ( 0.6 0.9 1.0 ) ;
  x3do:translation ( -0.65 -0.5 1.6 ) .
:Engine a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_7_2 ;
  x3do:hasChildren :EngineShape, :Transform_2_3_2_1_7_2_1_2, :Transform_2_3_2_1_7_2_1_3, :Transform_2_3_2_1_7_2_1_4, :Transform_2_3_2_1_7_2_1_5, :Transform_2_3_2_1_7_2_1_6, :Transform_2_3_2_1_7_2_1_7, :Transform_2_3_2_1_7_2_1_8, :Transform_2_3_2_1_7_2_1_9 ;
  x3do:DEF 'Engine' ;
  x3do:rotation ( 1 0 0 1.57 ) ;
  x3do:scale ( 0.25 0.25 0.25 ) .
:EngineShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Engine ;
  x3do:hasIS :IS_2_3_2_1_7_2_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_7_2_1_1_2 ;
  x3do:DEF 'EngineShape' .
:IS_2_3_2_1_7_2_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :EngineShape ;
  x3do:hasConnect :connect_2_3_2_1_7_2_1_1_1_1 .
:connect_2_3_2_1_7_2_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_2_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:Extrusion_2_3_2_1_7_2_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :EngineShape ;
  x3do:creaseAngle 2.36 ;
  x3do:crossSection ( -0.05 -5 -0.15 -4.95 -0.25 -4.8 -0.35 -4.45 -0.45 -4 -0.45 4 -0.35 4.45 -0.25 4.8 -0.15 4.95 -0.05 5 0.05 5 0.15 4.95 0.25 4.8 0.35 4.45 0.45 4 0.45 -4 0.35 -4.45 0.25 -4.8 0.15 -4.95 0.05 -5 -0.05 -5 ) ;
  x3do:spine ( 0.00 0.0 -2.00 0.77 0.0 -1.95 1.20 0.0 -1.80 1.41 0.0 -1.56 1.58 0.0 -1.15 1.58 0.0 0.00 1.58 0.0 1.15 1.41 0.0 1.56 1.20 0.0 1.80 0.77 0.0 1.95 0.00 0.0 2.00 -0.77 0.0 1.95 -1.20 0.0 1.80 -1.41 0.0 1.56 -1.58 0.0 1.15 -1.58 0.0 0.00 -1.58 0.0 -1.15 -1.41 0.0 -1.56 -1.20 0.0 -1.80 -0.77 0.0 -1.95 0.00 0.0 -2.00 ) .
:Transform_2_3_2_1_7_2_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :Shape_2_3_2_1_7_2_1_2_1 .
:Shape_2_3_2_1_7_2_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_2 ;
  x3do:hasAppearance :EngineInsideColor ;
  x3do:hasGeometry :Extrusion_2_3_2_1_7_2_1_2_1_2 .
:EngineInsideColor a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_7_2_1_2_1 ;
  x3do:hasMaterial :Material_2_3_2_1_7_2_1_2_1_1_1 ;
  x3do:DEF 'EngineInsideColor' .
:Material_2_3_2_1_7_2_1_2_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :EngineInsideColor ;
  x3do:diffuseColor ( 0.25 0.25 0.25 ) .
:Extrusion_2_3_2_1_7_2_1_2_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_2_1_7_2_1_2_1 ;
  x3do:ccw false ;
  x3do:crossSection ( 0.00 -2.00 0.77 -1.95 1.20 -1.80 1.41 -1.56 1.58 -1.15 1.58 0.00 1.58 1.15 1.41 1.56 1.20 1.80 0.77 1.95 0.00 2.00 -0.77 1.95 -1.20 1.80 -1.41 1.56 -1.58 1.15 -1.58 0.0 -1.58 -1.15 -1.41 -1.56 -1.20 -1.80 -0.77 -1.95 0.0 -2.0 ) ;
  x3do:spine ( 0.0 6.5 0.0 0.0 -3.0 0.0 ) .
:Transform_2_3_2_1_7_2_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :Shape_2_3_2_1_7_2_1_3_1 ;
  x3do:translation ( 0 6.6 0 ) .
:Shape_2_3_2_1_7_2_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_3 ;
  x3do:hasAppearance :EngineInsideColor-USE-1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_7_2_1_3_1_2 .
:EngineInsideColor-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_7_2_1_3_1 ;
  owl:sameAs :EngineInsideColor . # DEF matching this USE
:Extrusion_2_3_2_1_7_2_1_3_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_2_1_7_2_1_3_1 ;
  x3do:crossSection ( 0.1 0.0 0.092 -0.038 0.071 -0.071 0.038 -0.092 0.0 -0.1 -0.038 -0.092 -0.071 -0.071 -0.092 -0.038 -0.1 0.0 -0.092 0.038 -0.071 0.071 -0.038 0.092 0.0 0.1 0.038 0.092 0.071 0.071 0.092 0.038 0.1 0.0 ) ;
  x3do:spine ( 0.0 0.0 -2.00 0.77 0.0 -1.95 1.20 0.0 -1.80 1.41 0.0 -1.56 1.58 0.0 -1.15 1.58 0.0 0.00 1.58 0.0 1.15 1.41 0.0 1.56 1.20 0.0 1.80 0.77 0.0 1.95 0.00 0.0 2.00 -0.77 0.0 1.95 -1.20 0.0 1.80 -1.41 0.0 1.56 -1.58 0.0 1.15 -1.58 0.0 0.0 -1.58 0.0 -1.15 -1.41 0.0 -1.56 -1.20 0.0 -1.80 -0.77 0.0 -1.95 0.0 0.0 -2.0 ) .
:Transform_2_3_2_1_7_2_1_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :EngineStripShape ;
  x3do:rotation ( 0.58 0.58 0.58 2.09 ) ;
  x3do:translation ( -1.55 1.75 0 ) .
:EngineStripShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_4 ;
  x3do:hasAppearance :Appearance_2_3_2_1_7_2_1_4_1_1 ;
  x3do:hasGeometry :Box_2_3_2_1_7_2_1_4_1_2 ;
  x3do:DEF 'EngineStripShape' .
:Appearance_2_3_2_1_7_2_1_4_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :EngineStripShape ;
  x3do:hasMaterial :Material_2_3_2_1_7_2_1_4_1_1_1 .
:Material_2_3_2_1_7_2_1_4_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_7_2_1_4_1_1 ;
  x3do:diffuseColor ( 0.05 0.05 0.05 ) .
:Box_2_3_2_1_7_2_1_4_1_2 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :EngineStripShape ;
  x3do:size ( 9.5 0.3 0.1 ) .
:Transform_2_3_2_1_7_2_1_5 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :EngineStripShape-USE-1 ;
  x3do:rotation ( 0.58 0.58 0.58 2.09 ) ;
  x3do:translation ( 1.55 1.75 0 ) .
:EngineStripShape-USE-1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_5 ;
  owl:sameAs :EngineStripShape . # DEF matching this USE
:Transform_2_3_2_1_7_2_1_6 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :EngineStripShape-USE-2 ;
  x3do:rotation ( 0.58 0.58 0.58 2.09 ) ;
  x3do:translation ( -1.55 1.75 -0.75 ) .
:EngineStripShape-USE-2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_6 ;
  owl:sameAs :EngineStripShape . # DEF matching this USE
:Transform_2_3_2_1_7_2_1_7 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :EngineStripShape-USE-3 ;
  x3do:rotation ( 0.58 0.58 0.58 2.09 ) ;
  x3do:translation ( 1.55 1.75 -0.75 ) .
:EngineStripShape-USE-3 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_7 ;
  owl:sameAs :EngineStripShape . # DEF matching this USE
:Transform_2_3_2_1_7_2_1_8 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :EngineStripShape-USE-4 ;
  x3do:rotation ( 0.58 0.58 0.58 2.09 ) ;
  x3do:translation ( -1.55 1.75 0.75 ) .
:EngineStripShape-USE-4 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_8 ;
  owl:sameAs :EngineStripShape . # DEF matching this USE
:Transform_2_3_2_1_7_2_1_9 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Engine ;
  x3do:hasChildren :EngineStripShape-USE-5 ;
  x3do:rotation ( 0.58 0.58 0.58 2.09 ) ;
  x3do:translation ( 1.55 1.75 0.75 ) .
:EngineStripShape-USE-5 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_2_1_9 ;
  owl:sameAs :EngineStripShape . # DEF matching this USE
:Transform_2_3_2_1_7_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :Engine-USE-1 ;
  x3do:rotation ( 0 -1 0 0.15 ) ;
  x3do:scale ( 0.6 0.9 1.0 ) ;
  x3do:translation ( 0.65 -0.5 1.6 ) .
:Engine-USE-1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_7_3 ;
  owl:sameAs :Engine . # DEF matching this USE
:Cockpit a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :CockpitBottom, :Transform_2_3_2_1_7_4_2, :Transform_2_3_2_1_7_4_3 ;
  x3do:DEF 'Cockpit' ;
  x3do:rotation ( 1 0 0 -1.57 ) ;
  x3do:translation ( 0.0 -0.4 1.51 ) .
:CockpitBottom a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Cockpit ;
  x3do:hasChildren :CockpitBottomShape, :Transform_2_3_2_1_7_4_1_2 ;
  x3do:DEF 'CockpitBottom' ;
  x3do:rotation ( 0 1 0 3.14 ) ;
  x3do:translation ( 0 2 -1.6 ) .
:CockpitBottomShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :CockpitBottom ;
  x3do:hasIS :IS_2_3_2_1_7_4_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_7_4_1_1_2 ;
  x3do:DEF 'CockpitBottomShape' .
:IS_2_3_2_1_7_4_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :CockpitBottomShape ;
  x3do:hasConnect :connect_2_3_2_1_7_4_1_1_1_1 .
:connect_2_3_2_1_7_4_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_4_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'cockpitColor' .
:Extrusion_2_3_2_1_7_4_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :CockpitBottomShape ;
  x3do:beginCap false ;
  x3do:convex false ;
  x3do:creaseAngle 1.5 ;
  x3do:crossSection ( -0.56 -0.65 -0.56 -0.3 -0.56 -0.05 -0.535 -0.02 -0.46 0.0 0.46 0.0 0.535 -0.02 0.56 -0.05 0.56 -0.3 0.56 -0.65 ) ;
  x3do:endCap false ;
  x3do:scale ( 1.0 2.5 1.0 2.0 1.0 1.61 0.9 1.25 ) ;
  x3do:solid false ;
  x3do:spine ( 0.0 0.0 0.0 0.0 0.375 0.0 0.0 1.25 0.0 0.0 2.15 0.0 ) .
:Transform_2_3_2_1_7_4_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :CockpitBottom ;
  x3do:hasChildren :FrontCockpitBottomShape ;
  x3do:translation ( 0 0 -0.325 ) .
:FrontCockpitBottomShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_1_2 ;
  x3do:hasIS :IS_2_3_2_1_7_4_1_2_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_7_4_1_2_1_2 ;
  x3do:DEF 'FrontCockpitBottomShape' .
:IS_2_3_2_1_7_4_1_2_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :FrontCockpitBottomShape ;
  x3do:hasConnect :connect_2_3_2_1_7_4_1_2_1_1_1 .
:connect_2_3_2_1_7_4_1_2_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_4_1_2_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'cockpitColor' .
:Extrusion_2_3_2_1_7_4_1_2_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :FrontCockpitBottomShape ;
  x3do:beginCap false ;
  x3do:convex false ;
  x3do:creaseAngle 1.5 ;
  x3do:crossSection ( -0.56 -0.65 -0.56 -0.3 -0.56 -0.05 -0.535 -0.02 -0.46 0.0 0.46 0.0 0.535 -0.02 0.56 -0.05 0.56 -0.3 0.56 -0.65 ) ;
  x3do:endCap false ;
  x3do:scale ( 0.9 0.75 0.85 0.56 ) ;
  x3do:solid false ;
  x3do:spine ( 0.0 2.15 0.0 0.0 2.56 0.0 ) .
:Transform_2_3_2_1_7_4_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Cockpit ;
  x3do:hasChildren :CockpitTopShape, :CenterBarShape, :Shape_2_3_2_1_7_4_2_3, :NoseShape1, :Transform_2_3_2_1_7_4_2_5 ;
  x3do:rotation ( 0 .71 .71 3.14 ) ;
  x3do:translation ( 0.0 2.0 0.4 ) .
:CockpitTopShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_2 ;
  x3do:hasIS :IS_2_3_2_1_7_4_2_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_7_4_2_1_2 ;
  x3do:DEF 'CockpitTopShape' .
:IS_2_3_2_1_7_4_2_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :CockpitTopShape ;
  x3do:hasConnect :connect_2_3_2_1_7_4_2_1_1_1 .
:connect_2_3_2_1_7_4_2_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_4_2_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'cockpitColor' .
:IndexedFaceSet_2_3_2_1_7_4_2_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :CockpitTopShape ;
  x3do:hasCoord :Coordinate_2_3_2_1_7_4_2_1_2_1 ;
  x3do:coordIndex ( 0 1 17 -1 1 2 16 17 -1 2 3 15 16 -1 3 4 10 11 14 15 -1 4 5 9 10 -1 5 6 8 9 -1 6 7 8 -1 11 12 13 14 -1 14 13 12 11 -1 1 0 17 -1 2 1 17 16 -1 3 2 16 15 -1 4 3 15 14 11 10 -1 5 4 10 9 -1 6 5 9 8 -1 7 6 8 -1 ) ;
  x3do:creaseAngle 1.57 .
:Coordinate_2_3_2_1_7_4_2_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_7_4_2_1_2 ;
  x3do:point ( 0.56 -0.3 0.0 0.56 -0.1 0.0 0.56 -0.04 0.0 0.475 0.0 0.0 -0.475 0.0 0.0 -0.56 -0.04 0.0 -0.56 -0.1 0.0 -0.56 -0.3 0.0 -0.56 -0.1 0.06 -0.56 -0.04 0.08 -0.475 0.0 0.10 -0.300 0.0 0.12 -0.300 -0.03 0.5 0.300 -0.03 0.5 0.300 0.0 0.12 0.475 0.0 0.10 0.56 -0.04 0.08 0.56 -0.1 0.06 ) .
:CenterBarShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_2 ;
  x3do:hasIS :IS_2_3_2_1_7_4_2_2_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_7_4_2_2_2 ;
  x3do:DEF 'CenterBarShape' .
:IS_2_3_2_1_7_4_2_2_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :CenterBarShape ;
  x3do:hasConnect :connect_2_3_2_1_7_4_2_2_1_1 .
:connect_2_3_2_1_7_4_2_2_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_4_2_2_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'cockpitColor' .
:IndexedFaceSet_2_3_2_1_7_4_2_2_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :CenterBarShape ;
  x3do:hasCoord :CenterBarCoord ;
  x3do:coordIndex ( 3 2 1 0 -1 0 1 2 3 -1 4 5 6 7 -1 7 6 5 4 -1 17 16 9 8 -1 8 9 16 17 -1 16 15 10 9 -1 9 10 15 16 -1 15 14 11 10 -1 10 11 14 15 -1 14 13 12 11 -1 11 12 13 14 -1 23 18 17 8 -1 8 17 18 23 -1 22 19 18 23 -1 23 18 19 22 -1 22 21 20 19 -1 19 20 21 22 -1 31 30 29 28 27 26 25 24 -1 24 25 26 27 28 29 30 31 -1 39 38 37 36 35 34 33 32 -1 32 33 34 35 36 37 38 39 -1 ) .
:CenterBarCoord a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_7_4_2_2_2 ;
  x3do:DEF 'CenterBarCoord' ;
  x3do:point ( 0.3 -0.03 0.5 0.3 -0.13 1.75 0.25 -0.13 1.75 0.25 -0.03 0.5 -0.3 -0.03 0.5 -0.3 -0.13 1.75 -0.25 -0.13 1.75 -0.25 -0.03 0.5 -0.3 -0.13 1.75 0.3 -0.13 1.75 0.4 -0.2 1.725 0.45 -0.3 1.7 0.56 -0.94 1.2 0.56 -0.95 1.25 0.45 -0.3 1.75 0.4 -0.2 1.775 0.3 -0.13 1.8 -0.3 -0.13 1.8 -0.4 -0.2 1.775 -0.45 -0.3 1.75 -0.56 -0.95 1.25 -0.56 -0.94 1.2 -0.45 -0.3 1.7 -0.4 -0.2 1.725 0.3 -0.13 1.75 0.3 -0.17 2.0 0.3 -0.25 2.1 0.3 -1.0 3.0 0.25 -1.0 3.0 0.25 -0.25 2.1 0.25 -0.17 2.0 0.25 -0.13 1.75 -0.3 -0.13 1.75 -0.3 -0.17 2.0 -0.3 -0.25 2.1 -0.3 -1.0 3.0 -0.25 -1.0 3.0 -0.25 -0.25 2.1 -0.25 -0.17 2.0 -0.25 -0.13 1.75 ) .
:Shape_2_3_2_1_7_4_2_3 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_2 ;
  x3do:hasAppearance :Appearance_2_3_2_1_7_4_2_3_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_7_4_2_3_2 .
:Appearance_2_3_2_1_7_4_2_3_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_7_4_2_3 ;
  x3do:hasMaterial :Material_2_3_2_1_7_4_2_3_1_1 .
:Material_2_3_2_1_7_4_2_3_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_7_4_2_3_1 ;
  x3do:diffuseColor ( 0.75 0.75 0.75 ) ;
  x3do:transparency 0.5 .
:IndexedFaceSet_2_3_2_1_7_4_2_3_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_1_7_4_2_3 ;
  x3do:hasCoord :GlassPaneCoord ;
  x3do:coordIndex ( 11 10 9 5 4 3 2 1 0 -1 0 1 2 3 4 5 9 10 11 -1 9 8 7 6 5 -1 5 6 7 8 9 -1 13 14 15 16 17 21 22 23 -1 23 22 21 17 16 15 14 13 -1 17 18 19 20 21 -1 21 20 19 18 17 -1 24 25 26 27 -1 27 26 25 24 -1 28 29 30 31 32 33 34 35 -1 35 34 33 32 31 30 29 28 -1 44 43 42 41 40 39 38 37 36 -1 36 37 38 39 40 41 42 43 44 -1 45 46 47 48 49 50 51 52 53 -1 53 52 51 50 49 48 47 46 45 -1 ) ;
  x3do:creaseAngle 0.8 .
:GlassPaneCoord a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_7_4_2_3_2 ;
  x3do:DEF 'GlassPaneCoord' ;
  x3do:point ( 0.3 -0.03 0.5 0.3 0.0 0.12 0.475 0.0 0.10 0.56 -0.04 0.08 0.56 -0.1 0.06 0.56 -0.3 0.0 0.56 -0.38 0.0 0.56 -0.7 0.37 0.56 -0.94 1.2 0.45 -0.3 1.7 0.4 -0.2 1.725 0.3 -0.13 1.75 -0.3 -0.03 0.5 -0.3 0.0 0.12 -0.475 0.0 0.10 -0.56 -0.04 0.08 -0.56 -0.1 0.06 -0.56 -0.3 0.0 -0.56 -0.38 0.0 -0.56 -0.7 0.37 -0.56 -0.94 1.2 -0.45 -0.3 1.7 -0.4 -0.2 1.725 -0.3 -0.13 1.75 0.25 -0.03 0.5 0.25 -0.13 1.75 -0.25 -0.13 1.75 -0.25 -0.03 0.5 0.25 -0.13 1.8 0.25 -0.17 2.0 0.25 -0.25 2.1 0.25 -1.0 3.0 -0.25 -1.0 3.0 -0.25 -0.25 2.1 -0.25 -0.17 2.0 -0.25 -0.13 1.8 0.3 -0.13 1.8 0.4 -0.2 1.775 0.45 -0.3 1.75 0.56 -0.95 1.25 0.48 -1.31 2.55 0.3 -1.0 3.0 0.3 -0.25 2.1 0.3 -0.17 2.0 0.3 -0.13 1.8 -0.3 -0.13 1.8 -0.4 -0.2 1.775 -0.45 -0.3 1.75 -0.56 -0.95 1.25 -0.48 -1.31 2.55 -0.3 -1.0 3.0 -0.3 -0.25 2.1 -0.3 -0.17 2.0 -0.3 -0.13 1.8 ) .
:NoseShape1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_2 ;
  x3do:hasIS :IS_2_3_2_1_7_4_2_4_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_7_4_2_4_2 ;
  x3do:DEF 'NoseShape1' .
:IS_2_3_2_1_7_4_2_4_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :NoseShape1 ;
  x3do:hasConnect :connect_2_3_2_1_7_4_2_4_1_1 .
:connect_2_3_2_1_7_4_2_4_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_4_2_4_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:IndexedFaceSet_2_3_2_1_7_4_2_4_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :NoseShape1 ;
  x3do:hasCoord :NoseCoord ;
  x3do:coordIndex ( 0 1 2 3 -1 0 3 4 -1 0 4 5 6 -1 9 8 7 1 -1 7 2 1 -1 3 2 10 11 -1 4 3 11 12 -1 5 4 12 13 -1 2 7 15 10 -1 7 8 14 15 -1 11 10 16 17 -1 11 17 18 19 -1 10 20 21 16 -1 21 18 17 16 -1 19 6 5 13 12 11 -1 20 10 15 14 8 9 -1 6 22 23 24 25 26 27 9 -1 27 26 25 24 23 22 6 -1 0 6 9 1 -1 6 5 28 22 -1 28 29 23 22 -1 29 30 24 23 -1 8 9 27 33 -1 32 33 27 26 -1 31 32 26 25 -1 30 31 25 24 -1 8 33 32 31 30 29 28 5 -1 41 40 39 38 37 36 35 34 -1 ) ;
  x3do:creaseAngle 0.86 .
:NoseCoord a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_7_4_2_4_2 ;
  x3do:DEF 'NoseCoord' ;
  x3do:point ( 0.3 -1.0 3.0 -0.3 -1.0 3.0 -0.1 -1.15 3.38 0.1 -1.15 3.38 0.20 -1.2 3.34 0.25 -1.31 3.2 0.48 -1.31 2.56 -0.20 -1.2 3.34 -0.25 -1.31 3.2 -0.48 -1.31 2.56 -0.025 -1.31 3.6 0.025 -1.31 3.6 0.115 -1.31 3.55 0.18 -1.31 3.45 -0.18 -1.31 3.45 -0.115 -1.31 3.55 -0.025 -1.5 3.55 0.025 -1.5 3.55 0.025 -1.555 3.2 0.025 -1.31 3.2 -0.025 -1.31 3.2 -0.025 -1.555 3.2 0.48 -1.635 2.56 0.455 -1.66 2.56 0.39 -1.675 2.56 -0.39 -1.675 2.56 -0.455 -1.66 2.56 -0.48 -1.635 2.56 0.25 -1.515 3.2 0.225 -1.54 3.25 0.16 -1.555 3.275 -0.16 -1.555 3.275 -0.225 -1.54 3.25 -0.25 -1.515 3.2 0.51 -1.635 2.15 0.51 -1.925 2.15 0.485 -1.975 2.15 0.42 -2.0 2.15 -0.42 -2.0 2.15 -0.485 -1.975 2.15 -0.51 -1.925 2.15 -0.51 -1.635 2.15 ) .
:Transform_2_3_2_1_7_4_2_5 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_7_4_2 ;
  x3do:hasChildren :NoseShape2 ;
  x3do:translation ( 0.0 -2.865 0.0 ) .
:NoseShape2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_2_5 ;
  x3do:hasIS :IS_2_3_2_1_7_4_2_5_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_7_4_2_5_1_2 ;
  x3do:DEF 'NoseShape2' .
:IS_2_3_2_1_7_4_2_5_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :NoseShape2 ;
  x3do:hasConnect :connect_2_3_2_1_7_4_2_5_1_1_1 .
:connect_2_3_2_1_7_4_2_5_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_4_2_5_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:Extrusion_2_3_2_1_7_4_2_5_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :NoseShape2 ;
  x3do:crossSection ( 0.11 -1.315 0.175 -1.34 0.2 -1.355 0.2 -1.515 0.175 -1.54 0.11 -1.555 -0.11 -1.555 -0.175 -1.54 -0.2 -1.515 -0.2 -1.355 -0.175 -1.34 -0.11 -1.315 0.11 -1.315 ) ;
  x3do:scale ( 0.7 1.0 0.7 1.0 ) ;
  x3do:spine ( 0.0 0.0 3.2 0.0 0.0 3.425 ) .
:Transform_2_3_2_1_7_4_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Cockpit ;
  x3do:hasChildren :FrontGunBaseShape, :Transform_2_3_2_1_7_4_3_2 ;
  x3do:translation ( 0 4.25 -1.35 ) .
:FrontGunBaseShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_3 ;
  x3do:hasIS :IS_2_3_2_1_7_4_3_1_1 ;
  x3do:hasGeometry :Sphere_2_3_2_1_7_4_3_1_2 ;
  x3do:DEF 'FrontGunBaseShape' .
:IS_2_3_2_1_7_4_3_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :FrontGunBaseShape ;
  x3do:hasConnect :connect_2_3_2_1_7_4_3_1_1_1 .
:connect_2_3_2_1_7_4_3_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_4_3_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:Sphere_2_3_2_1_7_4_3_1_2 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :FrontGunBaseShape ;
  x3do:radius 0.28 .
:Transform_2_3_2_1_7_4_3_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_7_4_3 ;
  x3do:hasChildren :Shape_2_3_2_1_7_4_3_2_1 ;
  x3do:translation ( 0.0 0.6 -0.05 ) .
:Shape_2_3_2_1_7_4_3_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_4_3_2 ;
  x3do:hasAppearance :Appearance_2_3_2_1_7_4_3_2_1_1 ;
  x3do:hasGeometry :Cylinder_2_3_2_1_7_4_3_2_1_2 .
:Appearance_2_3_2_1_7_4_3_2_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_7_4_3_2_1 ;
  x3do:hasMaterial :Material_2_3_2_1_7_4_3_2_1_1_1 .
:Material_2_3_2_1_7_4_3_2_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_7_4_3_2_1_1 ;
  x3do:diffuseColor ( 0.25 0.25 0.25 ) .
:Cylinder_2_3_2_1_7_4_3_2_1_2 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_2_1_7_4_3_2_1 ;
  x3do:height 1.75 ;
  x3do:radius 0.05 .
:Transform_2_3_2_1_7_5 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :CockpitBackWallShape ;
  x3do:translation ( 0 -0.575 -0.4 ) .
:CockpitBackWallShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_5 ;
  x3do:hasIS :IS_2_3_2_1_7_5_1_1 ;
  x3do:hasGeometry :Box_2_3_2_1_7_5_1_2 ;
  x3do:DEF 'CockpitBackWallShape' .
:IS_2_3_2_1_7_5_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :CockpitBackWallShape ;
  x3do:hasConnect :connect_2_3_2_1_7_5_1_1_1 .
:connect_2_3_2_1_7_5_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_5_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'cockpitColor' .
:Box_2_3_2_1_7_5_1_2 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :CockpitBackWallShape ;
  x3do:size ( 1.05 1.1 0.1 ) .
:Transform_2_3_2_1_7_6 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :CockpitFloorShape ;
  x3do:translation ( 0 -1.5 -1.8 ) .
:CockpitFloorShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_6 ;
  x3do:hasIS :IS_2_3_2_1_7_6_1_1 ;
  x3do:hasGeometry :Box_2_3_2_1_7_6_1_2 ;
  x3do:DEF 'CockpitFloorShape' .
:IS_2_3_2_1_7_6_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :CockpitFloorShape ;
  x3do:hasConnect :connect_2_3_2_1_7_6_1_1_1 .
:connect_2_3_2_1_7_6_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_7_6_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'cockpitColor' .
:Box_2_3_2_1_7_6_1_2 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :CockpitFloorShape ;
  x3do:size ( 0.9 0.1 2.5 ) .
:Transform_2_3_2_1_7_7 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :Seat ;
  x3do:translation ( 0 -1.2 -0.8 ) .
:Seat a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_1_7_7 ;
  x3do:hasChildren :Shape_2_3_2_1_7_7_1_1, :Transform_2_3_2_1_7_7_1_2 ;
  x3do:DEF 'Seat' .
:Shape_2_3_2_1_7_7_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Seat ;
  x3do:hasAppearance :SeatColor ;
  x3do:hasGeometry :Box_2_3_2_1_7_7_1_1_2 .
:SeatColor a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_7_7_1_1 ;
  x3do:hasMaterial :Material_2_3_2_1_7_7_1_1_1_1 ;
  x3do:DEF 'SeatColor' .
:Material_2_3_2_1_7_7_1_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :SeatColor ;
  x3do:diffuseColor ( 0.5 0.5 0.0 ) .
:Box_2_3_2_1_7_7_1_1_2 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_2_1_7_7_1_1 ;
  x3do:size ( 1.0 0.4 0.8 ) .
:Transform_2_3_2_1_7_7_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Seat ;
  x3do:hasChildren :Shape_2_3_2_1_7_7_1_2_1, :Shape_2_3_2_1_7_7_1_2_2 ;
  x3do:translation ( 0 0.45 0.35 ) .
:Shape_2_3_2_1_7_7_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_7_1_2 ;
  x3do:hasAppearance :SeatColor-USE-1 ;
  x3do:hasGeometry :Box_2_3_2_1_7_7_1_2_1_2 .
:SeatColor-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_7_7_1_2_1 ;
  owl:sameAs :SeatColor . # DEF matching this USE
:Box_2_3_2_1_7_7_1_2_1_2 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_2_1_7_7_1_2_1 ;
  x3do:size ( 0.75 0.5 0.1 ) .
:Shape_2_3_2_1_7_7_1_2_2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_7_7_1_2 ;
  x3do:hasAppearance :Appearance_2_3_2_1_7_7_1_2_2_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_7_7_1_2_2_2 .
:Appearance_2_3_2_1_7_7_1_2_2_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_7_7_1_2_2 ;
  x3do:hasMaterial :Material_2_3_2_1_7_7_1_2_2_1_1 .
:Material_2_3_2_1_7_7_1_2_2_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_7_7_1_2_2_1 ;
  x3do:diffuseColor ( 0.6 0.6 0 ) .
:IndexedFaceSet_2_3_2_1_7_7_1_2_2_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_1_7_7_1_2_2 ;
  x3do:hasCoord :Coordinate_2_3_2_1_7_7_1_2_2_2_1 ;
  x3do:coordIndex ( 0 1 2 3 4 -1 0 4 3 8 9 5 -1 9 8 7 6 5 -1 0 5 6 1 -1 8 3 2 7 -1 14 13 12 11 10 -1 15 19 18 13 14 10 -1 15 16 17 18 19 -1 15 10 11 16 -1 13 18 17 12 -1 23 22 0 10 -1 25 24 21 20 -1 22 25 20 0 -1 24 23 10 21 -1 22 23 24 25 -1 ) .
:Coordinate_2_3_2_1_7_7_1_2_2_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_7_7_1_2_2_2 ;
  x3do:point ( 0.375 0.25 -0.05 0.375 -0.25 -0.15 0.375 -0.25 0.05 0.375 0.3 0.05 0.375 0.28 0.0 0.425 0.25 -0.05 0.5 -0.25 -0.15 0.5 -0.25 0.05 0.425 0.3 0.05 0.425 0.28 0.0 -0.375 0.25 -0.05 -0.375 -0.25 -0.15 -0.375 -0.25 0.05 -0.375 0.3 0.05 -0.375 0.28 0.0 -0.425 0.25 -0.05 -0.5 -0.25 -0.15 -0.5 -0.25 0.05 -0.425 0.3 0.05 -0.425 0.28 0.0 0.375 0.25 0.05 -0.375 0.25 0.05 0.3 0.5 -0.05 -0.3 0.5 -0.05 -0.3 0.5 0.05 0.3 0.5 0.05 ) .
:Transform_2_3_2_1_7_8 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBody ;
  x3do:hasChildren :Seat-USE-1 ;
  x3do:translation ( 0 -1.4 -2.0 ) .
:Seat-USE-1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_1_7_8 ;
  owl:sameAs :Seat . # DEF matching this USE
:FuselageBottom a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :Transform_2_3_2_1_8_1, :Transform_2_3_2_1_8_2, :BottomACLightClock, :BottomLightColorPath ;
  x3do:DEF 'FuselageBottom' .
:Transform_2_3_2_1_8_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBottom ;
  x3do:hasChildren :Shape_2_3_2_1_8_1_1 ;
  x3do:translation ( -0.25 -0.25 0.0 ) .
:Shape_2_3_2_1_8_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_8_1 ;
  x3do:hasAppearance :Black ;
  x3do:hasGeometry :Box_2_3_2_1_8_1_1_2 .
:Black a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_8_1_1 ;
  x3do:hasMaterial :Material_2_3_2_1_8_1_1_1_1 ;
  x3do:DEF 'Black' .
:Material_2_3_2_1_8_1_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Black ;
  x3do:diffuseColor ( 0.0 0.0 0.0 ) .
:Box_2_3_2_1_8_1_1_2 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_2_1_8_1_1 ;
  x3do:size ( 0.5 0.1 0.5 ) .
:Transform_2_3_2_1_8_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FuselageBottom ;
  x3do:hasChildren :Shape_2_3_2_1_8_2_1, :Shape_2_3_2_1_8_2_2 ;
  x3do:translation ( -1.0 -0.25 0.0 ) .
:Shape_2_3_2_1_8_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_8_2 ;
  x3do:hasAppearance :Appearance_2_3_2_1_8_2_1_1 ;
  x3do:hasGeometry :Sphere_2_3_2_1_8_2_1_2 .
:Appearance_2_3_2_1_8_2_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_8_2_1 ;
  x3do:hasMaterial :BottomLightColor .
:BottomLightColor a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_8_2_1_1 ;
  x3do:DEF 'BottomLightColor' ;
  x3do:diffuseColor ( 0.4 0.4 0.4 ) .
:Sphere_2_3_2_1_8_2_1_2 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_2_1_8_2_1 ;
  x3do:radius 0.04 .
:Shape_2_3_2_1_8_2_2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_8_2 ;
  x3do:hasAppearance :Appearance_2_3_2_1_8_2_2_1 ;
  x3do:hasGeometry :Cylinder_2_3_2_1_8_2_2_2 .
:Appearance_2_3_2_1_8_2_2_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_8_2_2 ;
  x3do:hasMaterial :Material_2_3_2_1_8_2_2_1_1 .
:Material_2_3_2_1_8_2_2_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_8_2_2_1 ;
  x3do:diffuseColor ( 0.1 0.1 0.1 ) .
:Cylinder_2_3_2_1_8_2_2_2 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_2_1_8_2_2 ;
  x3do:height 0.05 ;
  x3do:radius 0.06 .
:BottomACLightClock a owl:NamedIndividual, x3do:TimeSensor ;
  x3do:hasParent :FuselageBottom ;
  x3do:DEF 'BottomACLightClock' ;
  x3do:enabled false ;
  x3do:loop true .
:BottomLightColorPath a owl:NamedIndividual, x3do:ColorInterpolator ;
  x3do:hasParent :FuselageBottom ;
  x3do:DEF 'BottomLightColorPath' ;
  x3do:key ( 0.0 0.5 0.5 1.0 ) ;
  x3do:keyValue ( 1.0 0.0 0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 ) .
:Cowling a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :Transform_2_3_2_1_9_1, :Transform_2_3_2_1_9_2, :TopACLightClock, :TopLightColorPath ;
  x3do:DEF 'Cowling' ;
  x3do:scale ( 0.55 0.65 0.6 ) ;
  x3do:translation ( 0.48 1.8 0.0 ) .
:Transform_2_3_2_1_9_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Cowling ;
  x3do:hasChildren :CowlingShape ;
  x3do:rotation ( 0 1 0 -1.57 ) .
:CowlingShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_9_1 ;
  x3do:hasIS :IS_2_3_2_1_9_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_9_1_1_2 ;
  x3do:DEF 'CowlingShape' .
:IS_2_3_2_1_9_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :CowlingShape ;
  x3do:hasConnect :connect_2_3_2_1_9_1_1_1_1 .
:connect_2_3_2_1_9_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_9_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'cowlingColor' .
:Extrusion_2_3_2_1_9_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :CowlingShape ;
  x3do:creaseAngle 0.8 ;
  x3do:crossSection ( 0.05 -0.75 -0.05 -0.75 -0.2 -0.65 -0.35 -0.5 -0.65 0.0 -0.65 1.5 -0.6 2.5 -0.4 3.25 0.0 4.0 0.4 3.25 0.6 2.5 0.65 1.5 0.65 0.0 0.35 -0.5 0.2 -0.65 0.05 -0.75 ) ;
  x3do:scale ( 1.0 1.0 0.8 0.8 0.65 0.65 ) ;
  x3do:spine ( 0.0 0.0 0.0 0.0 0.6 0.0 0.0 1.0 0.0 ) .
:Transform_2_3_2_1_9_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Cowling ;
  x3do:hasChildren :Shape_2_3_2_1_9_2_1, :Shape_2_3_2_1_9_2_2 ;
  x3do:translation ( -1.5 1.04 0.0 ) .
:Shape_2_3_2_1_9_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_9_2 ;
  x3do:hasAppearance :Appearance_2_3_2_1_9_2_1_1 ;
  x3do:hasGeometry :Sphere_2_3_2_1_9_2_1_2 .
:Appearance_2_3_2_1_9_2_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_9_2_1 ;
  x3do:hasMaterial :TopLightColor .
:TopLightColor a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_9_2_1_1 ;
  x3do:DEF 'TopLightColor' ;
  x3do:diffuseColor ( 0.4 0.4 0.4 ) .
:Sphere_2_3_2_1_9_2_1_2 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_2_1_9_2_1 ;
  x3do:radius 0.04 .
:Shape_2_3_2_1_9_2_2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_9_2 ;
  x3do:hasAppearance :Appearance_2_3_2_1_9_2_2_1 ;
  x3do:hasGeometry :Cylinder_2_3_2_1_9_2_2_2 .
:Appearance_2_3_2_1_9_2_2_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_9_2_2 ;
  x3do:hasMaterial :Material_2_3_2_1_9_2_2_1_1 .
:Material_2_3_2_1_9_2_2_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_2_1_9_2_2_1 ;
  x3do:diffuseColor ( 0.1 0.1 0.1 ) .
:Cylinder_2_3_2_1_9_2_2_2 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_2_1_9_2_2 ;
  x3do:height 0.05 ;
  x3do:radius 0.06 .
:TopACLightClock a owl:NamedIndividual, x3do:TimeSensor ;
  x3do:hasParent :Cowling ;
  x3do:DEF 'TopACLightClock' ;
  x3do:enabled false ;
  x3do:loop true .
:TopLightColorPath a owl:NamedIndividual, x3do:ColorInterpolator ;
  x3do:hasParent :Cowling ;
  x3do:DEF 'TopLightColorPath' ;
  x3do:key ( 0.0 0.5 0.5 1.0 ) ;
  x3do:keyValue ( 1.0 0.0 0.0 1.0 0.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 ) .
:Transform_2_3_2_1_10 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :Inline_2_3_2_1_10_1 ;
  x3do:rotation ( 0 0 1 -1.57 ) ;
  x3do:translation ( 0.75 -1 1.15 ) .
:Inline_2_3_2_1_10_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :Transform_2_3_2_1_10 ;
  x3do:url '"../../AircraftHelicopters/AH1SuperCobraUnitedStates/SkidRight.x3d" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidRight.x3d" "../../AircraftHelicopters/AH1SuperCobraUnitedStates/SkidRight.wrl" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidRight.wrl"' .
:Transform_2_3_2_1_11 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :Inline_2_3_2_1_11_1 ;
  x3do:rotation ( -0.71 0.71 0 -3.14 ) ;
  x3do:translation ( 0.75 -1 -1.15 ) .
:Inline_2_3_2_1_11_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :Transform_2_3_2_1_11 ;
  x3do:url '"../../AircraftHelicopters/AH1SuperCobraUnitedStates/SkidLeft.x3d" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidLeft.x3d" "../../AircraftHelicopters/AH1SuperCobraUnitedStates/SkidLeft.wrl" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SkidLeft.wrl"' .
:Transform_2_3_2_1_12 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :RightWing, :Transform_2_3_2_1_12_2 ;
  x3do:rotation ( 0 0.71 0.71 3.14 ) ;
  x3do:translation ( -1.0 0.5 0.6 ) .
:RightWing a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_1_12 ;
  x3do:hasChildren :RightWingShape, :Transform_2_3_2_1_12_1_2, :Transform_2_3_2_1_12_1_3 ;
  x3do:DEF 'RightWing' .
:RightWingShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :RightWing ;
  x3do:hasIS :IS_2_3_2_1_12_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_12_1_1_2 ;
  x3do:DEF 'RightWingShape' .
:IS_2_3_2_1_12_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :RightWingShape ;
  x3do:hasConnect :connect_2_3_2_1_12_1_1_1_1 .
:connect_2_3_2_1_12_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_12_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:Extrusion_2_3_2_1_12_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :RightWingShape ;
  x3do:crossSection ( -4.2 0.0 -4.1 0.02 -4.0 0.04 -3.9 0.045 -3.82 0.04 -2.0 0.0 -3.82 -0.04 -3.9 -0.045 -4.0 -0.04 -4.1 -0.02 -4.2 0.0 ) ;
  x3do:scale ( 0.475 1.0 0.3 1.0 ) ;
  x3do:spine ( 0.1 0.0 0.0 0.0 1.8 0.0 ) .
:Transform_2_3_2_1_12_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RightWing ;
  x3do:hasChildren :WingAttachmentShape ;
  x3do:rotation ( 1 0 0 3.14 ) ;
  x3do:translation ( -1.4 1.75 -0.15 ) .
:WingAttachmentShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_12_1_2 ;
  x3do:hasIS :IS_2_3_2_1_12_1_2_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_12_1_2_1_2 ;
  x3do:DEF 'WingAttachmentShape' .
:IS_2_3_2_1_12_1_2_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :WingAttachmentShape ;
  x3do:hasConnect :connect_2_3_2_1_12_1_2_1_1_1 .
:connect_2_3_2_1_12_1_2_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_12_1_2_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:Extrusion_2_3_2_1_12_1_2_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :WingAttachmentShape ;
  x3do:crossSection ( -0.1 0.0 0.1 0.0 0.1 -0.2 -0.1 -0.2 -0.1 0.0 ) ;
  x3do:scale ( 0.9 0.9 0.95 0.95 1.0 1.0 1.0 1.0 0.5 0.5 0.45 0.45 0.4 0.4 ) ;
  x3do:spine ( 0.0 0.0 0.0 0.05 0.0 0.0 0.1 0.0 0.0 0.6 0.0 0.0 1.0 0.0 0.0 1.05 0.0 0.0 1.1 0.0 0.0 ) .
:Transform_2_3_2_1_12_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RightWing ;
  x3do:hasChildren :WingAttachmentShape-USE-1 ;
  x3do:rotation ( 1 0 0 3.14 ) ;
  x3do:translation ( -1.7 0.75 -0.15 ) .
:WingAttachmentShape-USE-1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_12_1_3 ;
  owl:sameAs :WingAttachmentShape . # DEF matching this USE
:Transform_2_3_2_1_12_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_12 ;
  x3do:hasChildren :RocketPod ;
  x3do:rotation ( 0 0 1 1.57 ) ;
  x3do:translation ( -1 1.6 -0.5 ) .
:RocketPod a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :Transform_2_3_2_1_12_2 ;
  x3do:DEF 'RocketPod' ;
  x3do:url '"../../AircraftHelicopters/AH1SuperCobraUnitedStates/RocketPod.x3d" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/RocketPod.x3d" "../../AircraftHelicopters/AH1SuperCobraUnitedStates/RocketPod.wrl" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/RocketPod.wrl"' .
:Transform_2_3_2_1_13 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :LeftWing, :Transform_2_3_2_1_13_2 ;
  x3do:rotation ( 0 0.71 0.71 3.14 ) ;
  x3do:translation ( -1.0 0.5 -0.6 ) .
:LeftWing a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_1_13 ;
  x3do:hasChildren :LeftWingShape, :Transform_2_3_2_1_13_1_2, :Transform_2_3_2_1_13_1_3 ;
  x3do:DEF 'LeftWing' .
:LeftWingShape a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :LeftWing ;
  x3do:hasIS :IS_2_3_2_1_13_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_2_1_13_1_1_2 ;
  x3do:DEF 'LeftWingShape' .
:IS_2_3_2_1_13_1_1_1 a owl:NamedIndividual, x3do:IS ;
  x3do:hasParent :LeftWingShape ;
  x3do:hasConnect :connect_2_3_2_1_13_1_1_1_1 .
:connect_2_3_2_1_13_1_1_1_1 a owl:NamedIndividual, x3do:connect ;
  x3do:hasParent :IS_2_3_2_1_13_1_1_1 ;
  x3do:nodeField 'appearance' ;
  x3do:protoField 'fuselageColor' .
:Extrusion_2_3_2_1_13_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :LeftWingShape ;
  x3do:convex false ;
  x3do:crossSection ( 4.2 0.0 4.1 -0.02 4.0 -0.04 3.9 -0.045 3.82 -0.04 2.0 0.0 3.82 0.04 3.9 0.045 4.0 0.04 4.1 0.02 4.2 0.0 ) ;
  x3do:scale ( 0.475 1.0 0.3 1.0 ) ;
  x3do:spine ( 0.1 -0.0 0.0 0.0 -1.8 0.0 ) .
:Transform_2_3_2_1_13_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LeftWing ;
  x3do:hasChildren :WingAttachmentShape-USE-2 ;
  x3do:rotation ( 1 0 0 3.14 ) ;
  x3do:translation ( -1.4 -1.75 -0.15 ) .
:WingAttachmentShape-USE-2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_13_1_2 ;
  owl:sameAs :WingAttachmentShape . # DEF matching this USE
:Transform_2_3_2_1_13_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LeftWing ;
  x3do:hasChildren :WingAttachmentShape-USE-3 ;
  x3do:rotation ( 1 0 0 3.14 ) ;
  x3do:translation ( -1.7 -0.75 -0.15 ) .
:WingAttachmentShape-USE-3 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_1_13_1_3 ;
  owl:sameAs :WingAttachmentShape . # DEF matching this USE
:Transform_2_3_2_1_13_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_1_13 ;
  x3do:hasChildren :RocketPod-USE-1 ;
  x3do:rotation ( 0 0 1 1.57 ) ;
  x3do:translation ( -1 -1.6 -0.5 ) .
:RocketPod-USE-1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :Transform_2_3_2_1_13_2 ;
  owl:sameAs :RocketPod . # DEF matching this USE
:Transform_2_3_2_1_14 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_2_1 ;
  x3do:hasChildren :MainRotor ;
  x3do:translation ( 0 2.7 0 ) .
:MainRotor a owl:NamedIndividual, x3do:ProtoInstance ;
  x3do:hasParent :Transform_2_3_2_1_14 ;
  x3do:DEF 'MainRotor' ;
  x3do:name 'FourBladeMainRotor' .
:ROUTE_2_3_2_2 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'status' ;
  x3do:fromNode 'InFlightStatusScript' ;
  x3do:toField 'set_loop' ;
  x3do:toNode 'HeloFlyingAudioClip' .
:ROUTE_2_3_2_3 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'status' ;
  x3do:fromNode 'InFlightStatusScript' ;
  x3do:toField 'rotationOn' ;
  x3do:toNode 'MainRotor' .
:ROUTE_2_3_2_4 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'status' ;
  x3do:fromNode 'InFlightStatusScript' ;
  x3do:toField 'rotationOn' ;
  x3do:toNode 'TailRotor' .
:ROUTE_2_3_2_5 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'status' ;
  x3do:fromNode 'InFlightStatusScript' ;
  x3do:toField 'set_enabled' ;
  x3do:toNode 'BottomACLightClock' .
:ROUTE_2_3_2_6 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'status' ;
  x3do:fromNode 'InFlightStatusScript' ;
  x3do:toField 'set_enabled' ;
  x3do:toNode 'TopACLightClock' .
:ROUTE_2_3_2_7 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'fraction_changed' ;
  x3do:fromNode 'BottomACLightClock' ;
  x3do:toField 'set_fraction' ;
  x3do:toNode 'BottomLightColorPath' .
:ROUTE_2_3_2_8 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'value_changed' ;
  x3do:fromNode 'BottomLightColorPath' ;
  x3do:toField 'set_emissiveColor' ;
  x3do:toNode 'BottomLightColor' .
:ROUTE_2_3_2_9 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'fraction_changed' ;
  x3do:fromNode 'TopACLightClock' ;
  x3do:toField 'set_fraction' ;
  x3do:toNode 'TopLightColorPath' .
:ROUTE_2_3_2_10 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :ProtoBody_2_3_2 ;
  x3do:fromField 'value_changed' ;
  x3do:fromNode 'TopLightColorPath' ;
  x3do:toField 'set_emissiveColor' ;
  x3do:toNode 'TopLightColor' .
:Background_2_4 a owl:NamedIndividual, x3do:Background ;
  x3do:hasParent :Scene ;
  x3do:skyColor ( .4 .4 .6 ) .
:Anchor_2_5 a owl:NamedIndividual, x3do:Anchor ;
  x3do:hasParent :Scene ;
  x3do:hasChildren :Group_2_5_1 ;
  x3do:description 'Link to example' ;
  x3do:url '"SuperCobraExample.x3d" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SuperCobraExample.x3d" "SuperCobraExample.wrl" "https://www.web3d.org/x3d/content/examples/Savage/AircraftHelicopters/AH1SuperCobraUnitedStates/SuperCobraExample.wrl"' .
:Group_2_5_1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Anchor_2_5 ;
  x3do:hasChildren :Shape_2_5_1_1, :Shape_2_5_1_2 .
:Shape_2_5_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Group_2_5_1 ;
  x3do:hasGeometry :Text_2_5_1_1_1 ;
  x3do:hasAppearance :Appearance_2_5_1_1_2 .
:Text_2_5_1_1_1 a owl:NamedIndividual, x3do:Text ;
  x3do:hasParent :Shape_2_5_1_1 ;
  x3do:hasFontStyle :FontStyle_2_5_1_1_1_1 ;
  x3do:string '"Example ProtoInstance" "found at" "SuperCobraExample.x3d"' .
:FontStyle_2_5_1_1_1_1 a owl:NamedIndividual, x3do:FontStyle ;
  x3do:hasParent :Text_2_5_1_1_1 ;
  x3do:family '"SANS"' ;
  x3do:justify '"MIDDLE" "MIDDLE"' ;
  x3do:cssStyle 'BOLD' .
:Appearance_2_5_1_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_5_1_1 ;
  x3do:hasMaterial :Material_2_5_1_1_2_1 .
:Material_2_5_1_1_2_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_5_1_1_2 ;
  x3do:diffuseColor ( 0.9 0.9 0.9 ) .
:Shape_2_5_1_2 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Group_2_5_1 ;
  x3do:hasGeometry :Box_2_5_1_2_1 ;
  x3do:hasAppearance :Appearance_2_5_1_2_2 .
:Box_2_5_1_2_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_5_1_2 ;
  x3do:size ( 10 3 .001 ) .
:Appearance_2_5_1_2_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_5_1_2 ;
  x3do:hasMaterial :Material_2_5_1_2_2_1 .
:Material_2_5_1_2_2_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_5_1_2_2 ;
  x3do:transparency 1 .
