@prefix :        <https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/PlayRoom.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.0' ;
  x3do:noNamespaceSchemaLocation 'https://www.web3d.org/specifications/x3d-3.0.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_1 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'PlayRoom.x3d' ;
  x3do:name 'title' .
:meta_1_2 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'X3D example Model of a Play room' ;
  x3do:name 'description' .
:meta_1_3 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content '3 March 2004' ;
  x3do:name 'created' .
:meta_1_4 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content '20 October 2019' ;
  x3do:name 'modified' .
:meta_1_5 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'Vaughn Pangelinan' ;
  x3do:name 'creator' .
:meta_1_6 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/PlayRoom.x3d' ;
  x3do:name 'identifier' .
:meta_1_7 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content 'X3D-Edit 3.3, https://www.web3d.org/x3d/tools/X3D-Edit' ;
  x3do:name 'generator' .
:meta_1_8 a owl:NamedIndividual, x3do:meta ;
  x3do:hasParent :head ;
  x3do:content '../license.html' ;
  x3do:name 'license' .
:meta dcterms:title "PlayRoom.x3d" .
:meta dcterms:description "X3D example Model of a Play room" .
:meta dcterms:created "3 March 2004" .
:meta dcterms:modified "20 October 2019" .
:meta dcterms:creator "Vaughn Pangelinan" .
:meta dcterms:identifier "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/PlayRoom.x3d" .
:meta dcterms:generator "X3D-Edit 3.3, https://www.web3d.org/x3d/tools/X3D-Edit" .
:meta dcterms:license "../license.html" .
:Scene a owl:NamedIndividual, x3do:Scene ;
  x3do:hasParent :X3D ;
  x3do:hasChildren :WorldInfo_2_1, :Background_2_2, :World, :ViewpointsGroup .
:WorldInfo_2_1 a owl:NamedIndividual, x3do:WorldInfo ;
  x3do:hasParent :Scene ;
  x3do:title 'PlayRoom.x3d' .
:Background_2_2 a owl:NamedIndividual, x3do:Background ;
  x3do:hasParent :Scene ;
  x3do:groundColor ( .1 .4 .1 ) ;
  x3do:skyColor ( .8 .8 1 ) .
:World a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Scene ;
  x3do:hasChildren :House, :Yard, :FurnishingsTransform ;
  x3do:DEF 'World' .
:House a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :World ;
  x3do:hasChildren :Walls, :Floor, :CeilingTransform, :Light, :FrontDoor, :AllRoof, :Window, :MessageBoardTransform, :RealStuffTransform ;
  x3do:DEF 'House' .
:Walls a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :LowerWallTransform, :MidLowWallTransform, :MidHighLeftWallTransform, :MidHighRightWallTransform, :MidHighBackWallTransform, :UpperWallTransform ;
  x3do:DEF 'Walls' .
:LowerWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Walls ;
  x3do:hasChildren :Transform_2_3_1_1_1_1, :Transform_2_3_1_1_1_2, :Transform_2_3_1_1_1_3, :Transform_2_3_1_1_1_4, :Transform_2_3_1_1_1_5 ;
  x3do:DEF 'LowerWallTransform' .
:Transform_2_3_1_1_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LowerWallTransform ;
  x3do:hasChildren :Shape_2_3_1_1_1_1_1, :Transform_2_3_1_1_1_1_2 ;
  x3do:translation ( 1.25 .3 1.4 ) .
:Shape_2_3_1_1_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_1_1_1 ;
  x3do:hasGeometry :Box_2_3_1_1_1_1_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_1_1_1_1_2 .
:Box_2_3_1_1_1_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_1_1_1_1 ;
  x3do:size ( 1.499 .6 .201 ) .
:Appearance_2_3_1_1_1_1_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_1_1_1 ;
  x3do:hasTexture :BrickTex ;
  x3do:hasTextureTransform :TextureTransform_2_3_1_1_1_1_1_2_2 .
:BrickTex a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_1_1_1_1_2 ;
  x3do:DEF 'BrickTex' ;
  x3do:url '"brick.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/brick.jpg"' .
:TextureTransform_2_3_1_1_1_1_1_2_2 a owl:NamedIndividual, x3do:TextureTransform ;
  x3do:hasParent :Appearance_2_3_1_1_1_1_1_2 ;
  x3do:scale ( 5 2 ) .
:Transform_2_3_1_1_1_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_1_1_1 ;
  x3do:hasChildren :Shape_2_3_1_1_1_1_2_1 ;
  x3do:translation ( -0.7495 0 0 ) .
:Shape_2_3_1_1_1_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_1_1_1_2 ;
  x3do:hasGeometry :Box_2_3_1_1_1_1_2_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_1_1_1_2_1_2 .
:Box_2_3_1_1_1_1_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_1_1_1_2_1 ;
  x3do:size ( .001 .6 .2 ) .
:Appearance_2_3_1_1_1_1_2_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_1_1_2_1 ;
  x3do:hasTexture :BrickTex-USE-1 ;
  x3do:hasTextureTransform :TextureTransform_2_3_1_1_1_1_2_1_2_2 .
:BrickTex-USE-1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_1_1_1_2_1_2 ;
  owl:sameAs :BrickTex . # DEF matching this USE
:TextureTransform_2_3_1_1_1_1_2_1_2_2 a owl:NamedIndividual, x3do:TextureTransform ;
  x3do:hasParent :Appearance_2_3_1_1_1_1_2_1_2 ;
  x3do:scale ( .5 2 ) .
:Transform_2_3_1_1_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LowerWallTransform ;
  x3do:hasChildren :Shape_2_3_1_1_1_2_1, :Transform_2_3_1_1_1_2_2 ;
  x3do:translation ( -1.25 .3 1.4 ) .
:Shape_2_3_1_1_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_1_1_2 ;
  x3do:hasGeometry :Box_2_3_1_1_1_2_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_1_1_2_1_2 .
:Box_2_3_1_1_1_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_1_1_2_1 ;
  x3do:size ( 1.499 .6 .201 ) .
:Appearance_2_3_1_1_1_2_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_1_2_1 ;
  x3do:hasTexture :BrickTex-USE-2 ;
  x3do:hasTextureTransform :TextureTransform_2_3_1_1_1_2_1_2_2 .
:BrickTex-USE-2 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_1_1_2_1_2 ;
  owl:sameAs :BrickTex . # DEF matching this USE
:TextureTransform_2_3_1_1_1_2_1_2_2 a owl:NamedIndividual, x3do:TextureTransform ;
  x3do:hasParent :Appearance_2_3_1_1_1_2_1_2 ;
  x3do:scale ( 5 2 ) .
:Transform_2_3_1_1_1_2_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_1_1_2 ;
  x3do:hasChildren :Shape_2_3_1_1_1_2_2_1 ;
  x3do:translation ( .7495 0 0 ) .
:Shape_2_3_1_1_1_2_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_1_1_2_2 ;
  x3do:hasGeometry :Box_2_3_1_1_1_2_2_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_1_1_2_2_1_2 .
:Box_2_3_1_1_1_2_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_1_1_2_2_1 ;
  x3do:size ( .001 .6 .2 ) .
:Appearance_2_3_1_1_1_2_2_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_1_2_2_1 ;
  x3do:hasTexture :BrickTex-USE-3 ;
  x3do:hasTextureTransform :TextureTransform_2_3_1_1_1_2_2_1_2_2 .
:BrickTex-USE-3 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_1_1_2_2_1_2 ;
  owl:sameAs :BrickTex . # DEF matching this USE
:TextureTransform_2_3_1_1_1_2_2_1_2_2 a owl:NamedIndividual, x3do:TextureTransform ;
  x3do:hasParent :Appearance_2_3_1_1_1_2_2_1_2 ;
  x3do:scale ( .5 2 ) .
:Transform_2_3_1_1_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LowerWallTransform ;
  x3do:hasChildren :Shape_2_3_1_1_1_3_1 ;
  x3do:translation ( -1.9 .3 0 ) .
:Shape_2_3_1_1_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_1_1_3 ;
  x3do:hasGeometry :Box_2_3_1_1_1_3_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_1_1_3_1_2 .
:Box_2_3_1_1_1_3_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_1_1_3_1 ;
  x3do:size ( .201 .6 3 ) .
:Appearance_2_3_1_1_1_3_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_1_3_1 ;
  x3do:hasTexture :BrickTex-USE-4 ;
  x3do:hasTextureTransform :TextureTransform_2_3_1_1_1_3_1_2_2 .
:BrickTex-USE-4 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_1_1_3_1_2 ;
  owl:sameAs :BrickTex . # DEF matching this USE
:TextureTransform_2_3_1_1_1_3_1_2_2 a owl:NamedIndividual, x3do:TextureTransform ;
  x3do:hasParent :Appearance_2_3_1_1_1_3_1_2 ;
  x3do:scale ( 10 2 ) .
:Transform_2_3_1_1_1_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LowerWallTransform ;
  x3do:hasChildren :Shape_2_3_1_1_1_4_1 ;
  x3do:translation ( 1.9 .3 0 ) .
:Shape_2_3_1_1_1_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_1_1_4 ;
  x3do:hasGeometry :Box_2_3_1_1_1_4_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_1_1_4_1_2 .
:Box_2_3_1_1_1_4_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_1_1_4_1 ;
  x3do:size ( .201 .6 3 ) .
:Appearance_2_3_1_1_1_4_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_1_4_1 ;
  x3do:hasTexture :BrickTex-USE-5 ;
  x3do:hasTextureTransform :TextureTransform_2_3_1_1_1_4_1_2_2 .
:BrickTex-USE-5 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_1_1_4_1_2 ;
  owl:sameAs :BrickTex . # DEF matching this USE
:TextureTransform_2_3_1_1_1_4_1_2_2 a owl:NamedIndividual, x3do:TextureTransform ;
  x3do:hasParent :Appearance_2_3_1_1_1_4_1_2 ;
  x3do:scale ( 10 2 ) .
:Transform_2_3_1_1_1_5 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LowerWallTransform ;
  x3do:hasChildren :Shape_2_3_1_1_1_5_1 ;
  x3do:translation ( 0 .3 -1.4 ) .
:Shape_2_3_1_1_1_5_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_1_1_5 ;
  x3do:hasGeometry :Box_2_3_1_1_1_5_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_1_1_5_1_2 .
:Box_2_3_1_1_1_5_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_1_1_5_1 ;
  x3do:size ( 4 .6 .201 ) .
:Appearance_2_3_1_1_1_5_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_1_5_1 ;
  x3do:hasTexture :BrickTex-USE-6 ;
  x3do:hasTextureTransform :TextureTransform_2_3_1_1_1_5_1_2_2 .
:BrickTex-USE-6 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_1_1_5_1_2 ;
  owl:sameAs :BrickTex . # DEF matching this USE
:TextureTransform_2_3_1_1_1_5_1_2_2 a owl:NamedIndividual, x3do:TextureTransform ;
  x3do:hasParent :Appearance_2_3_1_1_1_5_1_2 ;
  x3do:scale ( 12 2 ) .
:MidLowWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Walls ;
  x3do:hasChildren :Shape_2_3_1_1_2_1 ;
  x3do:DEF 'MidLowWallTransform' .
:Shape_2_3_1_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :MidLowWallTransform ;
  x3do:hasAppearance :Appearance_2_3_1_1_2_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_1_2_1_2 .
:Appearance_2_3_1_1_2_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_2_1 ;
  x3do:hasMaterial :Material_2_3_1_1_2_1_1_1 .
:Material_2_3_1_1_2_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_1_2_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_1_2_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_1_2_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( -0.5 1.5 -0.5 1.3 -1.8 1.3 -1.8 -1.3 1.8 -1.3 1.8 1.3 0.5 1.3 0.5 1.5 2.0 1.5 2.0 -1.5 -2.0 -1.5 -2.0 1.5 -0.5 1.5 ) ;
  x3do:solid false ;
  x3do:spine ( 0 .6 0 0 .7 0 ) .
:MidHighLeftWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Walls ;
  x3do:hasChildren :Shape_2_3_1_1_3_1 ;
  x3do:DEF 'MidHighLeftWallTransform' .
:Shape_2_3_1_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :MidHighLeftWallTransform ;
  x3do:hasAppearance :Appearance_2_3_1_1_3_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_1_3_1_2 .
:Appearance_2_3_1_1_3_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_3_1 ;
  x3do:hasMaterial :Material_2_3_1_1_3_1_1_1 .
:Material_2_3_1_1_3_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_1_3_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_1_3_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_1_3_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( -1.8 .45 -1.8 1.3 -0.5 1.3 -0.5 1.5 -2.0 1.5 -2.0 .45 -1.8 .45 ) ;
  x3do:solid false ;
  x3do:spine ( 0 .7 0 0 1.5 0 ) .
:MidHighRightWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Walls ;
  x3do:hasChildren :MidHighRightFrontWallTransform, :MidHighRightSideWallTransform ;
  x3do:DEF 'MidHighRightWallTransform' .
:MidHighRightFrontWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MidHighRightWallTransform ;
  x3do:hasChildren :Shape_2_3_1_1_4_1_1 ;
  x3do:DEF 'MidHighRightFrontWallTransform' .
:Shape_2_3_1_1_4_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :MidHighRightFrontWallTransform ;
  x3do:hasAppearance :Appearance_2_3_1_1_4_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_1_4_1_1_2 .
:Appearance_2_3_1_1_4_1_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_4_1_1 ;
  x3do:hasMaterial :Material_2_3_1_1_4_1_1_1_1 .
:Material_2_3_1_1_4_1_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_1_4_1_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_1_4_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_1_4_1_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( 0.5 1.3 0.5 1.5 1 1.5 1 1.3 0.5 1.3 ) ;
  x3do:solid false ;
  x3do:spine ( 0 .7 0 0 1.5 0 ) .
:MidHighRightSideWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MidHighRightWallTransform ;
  x3do:hasChildren :Shape_2_3_1_1_4_2_1 ;
  x3do:DEF 'MidHighRightSideWallTransform' .
:Shape_2_3_1_1_4_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :MidHighRightSideWallTransform ;
  x3do:hasAppearance :Appearance_2_3_1_1_4_2_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_1_4_2_1_2 .
:Appearance_2_3_1_1_4_2_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_4_2_1 ;
  x3do:hasMaterial :Material_2_3_1_1_4_2_1_1_1 .
:Material_2_3_1_1_4_2_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_1_4_2_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_1_4_2_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_1_4_2_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( 1.8 .45 1.8 1.3 1.5 1.3 1.5 1.5 2.0 1.5 2.0 .45 1.8 .45 ) ;
  x3do:solid false ;
  x3do:spine ( 0 .7 0 0 1.5 0 ) .
:MidHighBackWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Walls ;
  x3do:hasChildren :Shape_2_3_1_1_5_1 ;
  x3do:DEF 'MidHighBackWallTransform' .
:Shape_2_3_1_1_5_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :MidHighBackWallTransform ;
  x3do:hasAppearance :Appearance_2_3_1_1_5_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_1_5_1_2 .
:Appearance_2_3_1_1_5_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_5_1 ;
  x3do:hasMaterial :Material_2_3_1_1_5_1_1_1 .
:Material_2_3_1_1_5_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_1_5_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_1_5_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_1_5_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( -1.8 -0.45 -1.8 -1.3 1.8 -1.3 1.8 -0.45 2.0 -0.45 2.0 -1.5 -2.0 -1.5 -2.0 -0.45 -1.8 -0.45 ) ;
  x3do:solid false ;
  x3do:spine ( 0 .7 0 0 1.5 0 ) .
:UpperWallTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Walls ;
  x3do:hasChildren :Shape_2_3_1_1_6_1 ;
  x3do:DEF 'UpperWallTransform' .
:Shape_2_3_1_1_6_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :UpperWallTransform ;
  x3do:hasAppearance :Appearance_2_3_1_1_6_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_1_6_1_2 .
:Appearance_2_3_1_1_6_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_1_6_1 ;
  x3do:hasMaterial :Material_2_3_1_1_6_1_1_1 .
:Material_2_3_1_1_6_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_1_6_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_1_6_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_1_6_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( -0.5 1.5 -0.5 1.3 -1.8 1.3 -1.8 -1.3 1.8 -1.3 1.8 1.3 0.5 1.3 0.5 1.5 2.0 1.5 2.0 -1.5 -2.0 -1.5 -2.0 1.5 -0.5 1.5 ) ;
  x3do:solid false ;
  x3do:spine ( 0 1.5 0 0 2 0 ) .
:Floor a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :Shape_2_3_1_2_1 ;
  x3do:DEF 'Floor' .
:Shape_2_3_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Floor ;
  x3do:hasAppearance :WoodFloor ;
  x3do:hasGeometry :IndexedFaceSet_2_3_1_2_1_2 .
:WoodFloor a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_2_1 ;
  x3do:hasTexture :ImageTexture_2_3_1_2_1_1_1 ;
  x3do:DEF 'WoodFloor' .
:ImageTexture_2_3_1_2_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :WoodFloor ;
  x3do:url '"PrintShopFloorWood.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/PrintShopFloorWood.jpg"' .
:IndexedFaceSet_2_3_1_2_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_1_2_1 ;
  x3do:hasCoord :Coordinate_2_3_1_2_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_1_2_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_1_2_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_2_1_2 ;
  x3do:point ( -2 0 -1.5 2 0 -1.5 2 0 1.5 -2 0 1.5 ) .
:TextureCoordinate_2_3_1_2_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_2_1_2 ;
  x3do:point ( 0 0 1 0 1 1 0 1 ) .
:CeilingTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :Shape_2_3_1_3_1, :Transform_2_3_1_3_2 ;
  x3do:DEF 'CeilingTransform' ;
  x3do:translation ( 0 2 0 ) .
:Shape_2_3_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :CeilingTransform ;
  x3do:hasAppearance :Ceiling ;
  x3do:hasGeometry :IndexedFaceSet_2_3_1_3_1_2 .
:Ceiling a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_3_1 ;
  x3do:hasTexture :ImageTexture_2_3_1_3_1_1_1 ;
  x3do:DEF 'Ceiling' .
:ImageTexture_2_3_1_3_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Ceiling ;
  x3do:url '"StuccoCeiling.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/StuccoCeiling.jpg"' .
:IndexedFaceSet_2_3_1_3_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_1_3_1 ;
  x3do:hasCoord :Coordinate_2_3_1_3_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_1_3_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_1_3_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_3_1_2 ;
  x3do:point ( -1.8 0 -1.3 1.8 0 -1.3 1.8 0 1.3 -1.8 0 1.3 ) .
:TextureCoordinate_2_3_1_3_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_3_1_2 ;
  x3do:point ( 0 0 5 0 5 5 0 5 ) .
:Transform_2_3_1_3_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :CeilingTransform ;
  x3do:hasChildren :Shape_2_3_1_3_2_1 ;
  x3do:scale ( .3 .3 .3 ) ;
  x3do:translation ( -0.4 .1 -0.155 ) .
:Shape_2_3_1_3_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_3_2 ;
  x3do:hasGeometry :Text_2_3_1_3_2_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_3_2_1_2 .
:Text_2_3_1_3_2_1_1 a owl:NamedIndividual, x3do:Text ;
  x3do:hasParent :Shape_2_3_1_3_2_1 ;
  x3do:length ( 3 ) ;
  x3do:string '"Hello In Here!"' .
:Appearance_2_3_1_3_2_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_3_2_1 ;
  x3do:hasMaterial :Material_2_3_1_3_2_1_2_1 .
:Material_2_3_1_3_2_1_2_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_3_2_1_2 ;
  x3do:diffuseColor ( 0.7 0.1 .1 ) .
:Light a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :Transform_2_3_1_4_1 ;
  x3do:DEF 'Light' ;
  x3do:scale ( .05 .05 .05 ) ;
  x3do:translation ( 0 2 0 ) .
:Transform_2_3_1_4_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Light ;
  x3do:hasChildren :Transform_2_3_1_4_1_1, :Group_2_3_1_4_1_2 .
:Transform_2_3_1_4_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_4_1 ;
  x3do:hasChildren :Shape_2_3_1_4_1_1_1, :LIGHTSOURCE, :Transform_2_3_1_4_1_1_3 ;
  x3do:translation ( 0 -2.95 0 ) .
:Shape_2_3_1_4_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_4_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_4_1_1_1_1 ;
  x3do:hasGeometry :Sphere_2_3_1_4_1_1_1_2 .
:Appearance_2_3_1_4_1_1_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_4_1_1_1 ;
  x3do:hasMaterial :BULB_MATERIAL .
:BULB_MATERIAL a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_4_1_1_1_1 ;
  x3do:DEF 'BULB_MATERIAL' ;
  x3do:diffuseColor ( 0.4 0.4 0.4 ) ;
  x3do:emissiveColor ( 0.8 0.8 0.8 ) .
:Sphere_2_3_1_4_1_1_1_2 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_1_4_1_1_1 .
:LIGHTSOURCE a owl:NamedIndividual, x3do:PointLight ;
  x3do:hasParent :Transform_2_3_1_4_1_1 ;
  x3do:DEF 'LIGHTSOURCE' ;
  x3do:radius 1000 .
:Transform_2_3_1_4_1_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_4_1_1 ;
  x3do:hasChildren :Shape_2_3_1_4_1_1_3_1 ;
  x3do:translation ( 0 2.65 0 ) .
:Shape_2_3_1_4_1_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_4_1_1_3 ;
  x3do:hasAppearance :Appearance_2_3_1_4_1_1_3_1_1 ;
  x3do:hasGeometry :Cylinder_2_3_1_4_1_1_3_1_2 .
:Appearance_2_3_1_4_1_1_3_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_4_1_1_3_1 ;
  x3do:hasMaterial :Material_2_3_1_4_1_1_3_1_1_1 .
:Material_2_3_1_4_1_1_3_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_4_1_1_3_1_1 ;
  x3do:diffuseColor ( 0.4 0.4 0.4 ) ;
  x3do:emissiveColor ( 0.1 0.1 0.1 ) .
:Cylinder_2_3_1_4_1_1_3_1_2 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_1_4_1_1_3_1 ;
  x3do:height .6 ;
  x3do:radius 0.05 .
:Group_2_3_1_4_1_2 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_1_4_1 ;
  x3do:hasChildren :Transform_2_3_1_4_1_2_1, :Transform_2_3_1_4_1_2_2 .
:Transform_2_3_1_4_1_2_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_1_4_1_2 ;
  x3do:hasChildren :Shape_2_3_1_4_1_2_1_1 ;
  x3do:translation ( 0 -1 0 ) .
:Shape_2_3_1_4_1_2_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_4_1_2_1 ;
  x3do:hasAppearance :BULB_CASING ;
  x3do:hasGeometry :Sphere_2_3_1_4_1_2_1_1_2 .
:BULB_CASING a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_4_1_2_1_1 ;
  x3do:hasMaterial :SOCKET_MATERIAL ;
  x3do:DEF 'BULB_CASING' .
:SOCKET_MATERIAL a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :BULB_CASING ;
  x3do:DEF 'SOCKET_MATERIAL' ;
  x3do:diffuseColor ( 0.4 0.4 0.16 ) ;
  x3do:emissiveColor ( 0.4 0.4 0.16 ) .
:Sphere_2_3_1_4_1_2_1_1_2 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_1_4_1_2_1_1 ;
  x3do:radius 0.5 .
:Transform_2_3_1_4_1_2_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Group_2_3_1_4_1_2 ;
  x3do:hasChildren :Shape_2_3_1_4_1_2_2_1 ;
  x3do:translation ( 0 -1.5 0 ) .
:Shape_2_3_1_4_1_2_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_4_1_2_2 ;
  x3do:hasAppearance :BULB_CASING-USE-1 ;
  x3do:hasGeometry :Cylinder_2_3_1_4_1_2_2_1_2 .
:BULB_CASING-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_4_1_2_2_1 ;
  owl:sameAs :BULB_CASING . # DEF matching this USE
:Cylinder_2_3_1_4_1_2_2_1_2 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_1_4_1_2_2_1 ;
  x3do:height 1 ;
  x3do:radius 0.5 .
:FrontDoor a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :House ;
  x3do:hasChildren :CYLINDERSENSOR, :DoorRotator ;
  x3do:DEF 'FrontDoor' .
:CYLINDERSENSOR a owl:NamedIndividual, x3do:CylinderSensor ;
  x3do:hasParent :FrontDoor ;
  x3do:DEF 'CYLINDERSENSOR' ;
  x3do:description 'Click and drag to rotate' ;
  x3do:maxAngle 0 ;
  x3do:minAngle -2.35 .
:DoorRotator a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FrontDoor ;
  x3do:hasROUTE :ROUTE_2_3_1_5_2_1 ;
  x3do:hasChildren :Transform_2_3_1_5_2_2 ;
  x3do:DEF 'DoorRotator' ;
  x3do:center ( -0.5 0 1.45 ) .
:ROUTE_2_3_1_5_2_1 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :DoorRotator ;
  x3do:fromField 'rotation_changed' ;
  x3do:fromNode 'CYLINDERSENSOR' ;
  x3do:toField 'set_rotation' ;
  x3do:toNode 'DoorRotator' .
:Transform_2_3_1_5_2_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :DoorRotator ;
  x3do:hasChildren :Shape_2_3_1_5_2_2_1, :Transform_2_3_1_5_2_2_2, :Transform_2_3_1_5_2_2_3, :Transform_2_3_1_5_2_2_4 ;
  x3do:translation ( 0 1 1.425 ) .
:Shape_2_3_1_5_2_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_5_2_2 ;
  x3do:hasGeometry :Box_2_3_1_5_2_2_1_1 ;
  x3do:hasAppearance :Wood .
:Box_2_3_1_5_2_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_5_2_2_1 ;
  x3do:size ( 1 2 .05 ) .
:Wood a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_5_2_2_1 ;
  x3do:hasMaterial :Material_2_3_1_5_2_2_1_2_1 ;
  x3do:DEF 'Wood' .
:Material_2_3_1_5_2_2_1_2_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Wood ;
  x3do:diffuseColor ( .6 .5 .2 ) .
:Transform_2_3_1_5_2_2_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_5_2_2 ;
  x3do:hasChildren :Shape_2_3_1_5_2_2_2_1 ;
  x3do:rotation ( 1 0 0 1.57 ) ;
  x3do:translation ( .45 .15 0 ) .
:Shape_2_3_1_5_2_2_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_5_2_2_2 ;
  x3do:hasGeometry :Cylinder_2_3_1_5_2_2_2_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_5_2_2_2_1_2 .
:Cylinder_2_3_1_5_2_2_2_1_1 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_1_5_2_2_2_1 ;
  x3do:height .1 ;
  x3do:radius .02 .
:Appearance_2_3_1_5_2_2_2_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_5_2_2_2_1 ;
  x3do:hasMaterial :copper .
:copper a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_5_2_2_2_1_2 ;
  x3do:DEF 'copper' ;
  x3do:ambientIntensity .26 ;
  x3do:diffuseColor ( .3 .11 0 ) ;
  x3do:shininess .08 ;
  x3do:specularColor ( .75 .33 0 ) .
:Transform_2_3_1_5_2_2_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_5_2_2 ;
  x3do:hasChildren :Shape_2_3_1_5_2_2_3_1 ;
  x3do:scale ( 1 1 .5 ) ;
  x3do:translation ( .45 .15 .06 ) .
:Shape_2_3_1_5_2_2_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_5_2_2_3 ;
  x3do:hasGeometry :Sphere_2_3_1_5_2_2_3_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_5_2_2_3_1_2 .
:Sphere_2_3_1_5_2_2_3_1_1 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_1_5_2_2_3_1 ;
  x3do:radius .03 .
:Appearance_2_3_1_5_2_2_3_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_5_2_2_3_1 ;
  x3do:hasMaterial :copper-USE-1 .
:copper-USE-1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_5_2_2_3_1_2 ;
  owl:sameAs :copper . # DEF matching this USE
:Transform_2_3_1_5_2_2_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_5_2_2 ;
  x3do:hasChildren :Shape_2_3_1_5_2_2_4_1 ;
  x3do:scale ( 1 1 .5 ) ;
  x3do:translation ( .45 .15 -0.06 ) .
:Shape_2_3_1_5_2_2_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_5_2_2_4 ;
  x3do:hasGeometry :Sphere_2_3_1_5_2_2_4_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_5_2_2_4_1_2 .
:Sphere_2_3_1_5_2_2_4_1_1 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_1_5_2_2_4_1 ;
  x3do:radius .03 .
:Appearance_2_3_1_5_2_2_4_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_5_2_2_4_1 ;
  x3do:hasMaterial :copper-USE-2 .
:copper-USE-2 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_5_2_2_4_1_2 ;
  owl:sameAs :copper . # DEF matching this USE
:AllRoof a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :FrontRoofSupport, :RearRoofSupport, :LeftRoof, :RightRoof ;
  x3do:DEF 'AllRoof' .
:FrontRoofSupport a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllRoof ;
  x3do:hasChildren :Shape_2_3_1_6_1_1 ;
  x3do:DEF 'FrontRoofSupport' .
:Shape_2_3_1_6_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :FrontRoofSupport ;
  x3do:hasAppearance :Appearance_2_3_1_6_1_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_6_1_1_2 .
:Appearance_2_3_1_6_1_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_6_1_1 ;
  x3do:hasMaterial :Material_2_3_1_6_1_1_1_1 .
:Material_2_3_1_6_1_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_6_1_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_6_1_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_6_1_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( -2 2 2 2 0 2.5 -2 2 ) ;
  x3do:solid false ;
  x3do:spine ( 0 0 1.5 0 0 1.3 ) .
:RearRoofSupport a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllRoof ;
  x3do:hasChildren :Shape_2_3_1_6_2_1 ;
  x3do:DEF 'RearRoofSupport' .
:Shape_2_3_1_6_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :RearRoofSupport ;
  x3do:hasAppearance :Appearance_2_3_1_6_2_1_1 ;
  x3do:hasGeometry :Extrusion_2_3_1_6_2_1_2 .
:Appearance_2_3_1_6_2_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_6_2_1 ;
  x3do:hasMaterial :Material_2_3_1_6_2_1_1_1 .
:Material_2_3_1_6_2_1_1_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_6_2_1_1 ;
  x3do:diffuseColor ( 1 0.9 0.7 ) .
:Extrusion_2_3_1_6_2_1_2 a owl:NamedIndividual, x3do:Extrusion ;
  x3do:hasParent :Shape_2_3_1_6_2_1 ;
  x3do:convex false ;
  x3do:creaseAngle 0.785 ;
  x3do:crossSection ( -2 2 2 2 0 2.5 -2 2 ) ;
  x3do:solid false ;
  x3do:spine ( 0 0 -1.3 0 0 -1.5 ) .
:LeftRoof a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllRoof ;
  x3do:hasChildren :Shape_2_3_1_6_3_1 ;
  x3do:DEF 'LeftRoof' ;
  x3do:rotation ( 0 0 1 .245 ) ;
  x3do:translation ( 0 2.501 0 ) .
:Shape_2_3_1_6_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :LeftRoof ;
  x3do:hasAppearance :RoofMaterial ;
  x3do:hasGeometry :IndexedFaceSet_2_3_1_6_3_1_2 .
:RoofMaterial a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_6_3_1 ;
  x3do:hasTexture :ImageTexture_2_3_1_6_3_1_1_1 ;
  x3do:DEF 'RoofMaterial' .
:ImageTexture_2_3_1_6_3_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :RoofMaterial ;
  x3do:url '"RoofRock.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/RoofRock.jpg"' .
:IndexedFaceSet_2_3_1_6_3_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_1_6_3_1 ;
  x3do:hasCoord :Coordinate_2_3_1_6_3_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_1_6_3_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_1_6_3_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_6_3_1_2 ;
  x3do:point ( 0 0 -1.8 -2.3 0 -1.8 -2.3 0 1.8 0 0 1.8 ) .
:TextureCoordinate_2_3_1_6_3_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_6_3_1_2 ;
  x3do:point ( 0 0 10 0 10 10 0 10 ) .
:RightRoof a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllRoof ;
  x3do:hasChildren :Shape_2_3_1_6_4_1 ;
  x3do:DEF 'RightRoof' ;
  x3do:rotation ( 0 0 1 -0.245 ) ;
  x3do:translation ( -0.001 2.501 0 ) .
:Shape_2_3_1_6_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :RightRoof ;
  x3do:hasAppearance :RoofMaterial-USE-1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_1_6_4_1_2 .
:RoofMaterial-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_6_4_1 ;
  owl:sameAs :RoofMaterial . # DEF matching this USE
:IndexedFaceSet_2_3_1_6_4_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_1_6_4_1 ;
  x3do:hasCoord :Coordinate_2_3_1_6_4_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_1_6_4_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_1_6_4_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_6_4_1_2 ;
  x3do:point ( 0 0 -1.8 2.3 0 -1.8 2.3 0 1.8 0 0 1.8 ) .
:TextureCoordinate_2_3_1_6_4_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_6_4_1_2 ;
  x3do:point ( 0 0 10 0 10 10 0 10 ) .
:Window a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :FrontWindowTransform, :LeftWindowTransform, :RightWindowTransform ;
  x3do:DEF 'Window' .
:FrontWindowTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Window ;
  x3do:hasChildren :FrontWindowGroup ;
  x3do:DEF 'FrontWindowTransform' ;
  x3do:translation ( 1.25 1.1 1.4 ) .
:FrontWindowGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :FrontWindowTransform ;
  x3do:hasChildren :MovingWindowTransform, :FrontSill, :FrontWindowView ;
  x3do:hasROUTE :ROUTE_2_3_1_7_1_1_4 ;
  x3do:DEF 'FrontWindowGroup' .
:MovingWindowTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FrontWindowGroup ;
  x3do:hasChildren :Transform_2_3_1_7_1_1_1_1, :Transform_2_3_1_7_1_1_1_2, :Transform_2_3_1_7_1_1_1_3, :Transform_2_3_1_7_1_1_1_4, :Transform_2_3_1_7_1_1_1_5, :Transform_2_3_1_7_1_1_1_6, :Transform_2_3_1_7_1_1_1_7, :Transform_2_3_1_7_1_1_1_8, :MyPlaneSensor ;
  x3do:DEF 'MovingWindowTransform' ;
  x3do:translation ( 0 .1 0 ) .
:Transform_2_3_1_7_1_1_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_1_1 .
:Shape_2_3_1_7_1_1_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_1 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_1_1_1_1 ;
  x3do:hasAppearance :Glass .
:Box_2_3_1_7_1_1_1_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_1_1 ;
  x3do:size ( .499 .721 .002 ) .
:Glass a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_1_1 ;
  x3do:hasMaterial :Material_2_3_1_7_1_1_1_1_1_2_1 ;
  x3do:DEF 'Glass' .
:Material_2_3_1_7_1_1_1_1_1_2_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Glass ;
  x3do:diffuseColor ( .03 .04 .08 ) ;
  x3do:transparency .85 .
:Transform_2_3_1_7_1_1_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_2_1 ;
  x3do:translation ( 0 -0.341 0 ) .
:Shape_2_3_1_7_1_1_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_2 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_1_2_1_1 ;
  x3do:hasAppearance :Wood-USE-1 .
:Box_2_3_1_7_1_1_1_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_2_1 ;
  x3do:size ( .492 .04 .02 ) .
:Wood-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_2_1 ;
  owl:sameAs :Wood . # DEF matching this USE
:Transform_2_3_1_7_1_1_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_3_1 ;
  x3do:translation ( 0 .341 0 ) .
:Shape_2_3_1_7_1_1_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_3 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_1_3_1_1 ;
  x3do:hasAppearance :Wood-USE-2 .
:Box_2_3_1_7_1_1_1_3_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_3_1 ;
  x3do:size ( .492 .04 .02 ) .
:Wood-USE-2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_3_1 ;
  owl:sameAs :Wood . # DEF matching this USE
:Transform_2_3_1_7_1_1_1_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_4_1 ;
  x3do:translation ( .191 0 0 ) .
:Shape_2_3_1_7_1_1_1_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_4 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_1_4_1_1 ;
  x3do:hasAppearance :Wood-USE-3 .
:Box_2_3_1_7_1_1_1_4_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_4_1 ;
  x3do:size ( .04 .722 .02 ) .
:Wood-USE-3 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_4_1 ;
  owl:sameAs :Wood . # DEF matching this USE
:Transform_2_3_1_7_1_1_1_5 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_5_1 ;
  x3do:translation ( -0.191 0 0 ) .
:Shape_2_3_1_7_1_1_1_5_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_5 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_1_5_1_1 ;
  x3do:hasAppearance :Wood-USE-4 .
:Box_2_3_1_7_1_1_1_5_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_5_1 ;
  x3do:size ( .04 .722 .02 ) .
:Wood-USE-4 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_5_1 ;
  owl:sameAs :Wood . # DEF matching this USE
:Transform_2_3_1_7_1_1_1_6 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_6_1 .
:Shape_2_3_1_7_1_1_1_6_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_6 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_1_6_1_1 ;
  x3do:hasAppearance :Wood-USE-5 .
:Box_2_3_1_7_1_1_1_6_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_6_1 ;
  x3do:size ( .472 .01 .01 ) .
:Wood-USE-5 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_6_1 ;
  owl:sameAs :Wood . # DEF matching this USE
:Transform_2_3_1_7_1_1_1_7 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_7_1 .
:Shape_2_3_1_7_1_1_1_7_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_7 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_1_7_1_1 ;
  x3do:hasAppearance :Wood-USE-6 .
:Box_2_3_1_7_1_1_1_7_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_7_1 ;
  x3do:size ( .01 .721 .01 ) .
:Wood-USE-6 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_7_1 ;
  owl:sameAs :Wood . # DEF matching this USE
:Transform_2_3_1_7_1_1_1_8 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:hasChildren :Transform_2_3_1_7_1_1_1_8_1, :Transform_2_3_1_7_1_1_1_8_2 ;
  x3do:translation ( 0 -0.33 -0.01 ) .
:Transform_2_3_1_7_1_1_1_8_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_8 ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_8_1_1 ;
  x3do:rotation ( 1 0 0 1.57 ) ;
  x3do:translation ( 0 0 -0.012 ) .
:Shape_2_3_1_7_1_1_1_8_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_8_1 ;
  x3do:hasGeometry :Cylinder_2_3_1_7_1_1_1_8_1_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_7_1_1_1_8_1_1_2 .
:Cylinder_2_3_1_7_1_1_1_8_1_1_1 a owl:NamedIndividual, x3do:Cylinder ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_8_1_1 ;
  x3do:height .025 ;
  x3do:radius .0075 .
:Appearance_2_3_1_7_1_1_1_8_1_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_8_1_1 ;
  x3do:hasMaterial :copper2 .
:copper2 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_7_1_1_1_8_1_1_2 ;
  x3do:DEF 'copper2' ;
  x3do:ambientIntensity .26 ;
  x3do:diffuseColor ( .3 .11 0 ) ;
  x3do:shininess .08 ;
  x3do:specularColor ( .75 .33 0 ) .
:Transform_2_3_1_7_1_1_1_8_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_8 ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_1_8_2_1 ;
  x3do:scale ( 1 1 .5 ) ;
  x3do:translation ( 0 0 -0.02 ) .
:Shape_2_3_1_7_1_1_1_8_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_1_8_2 ;
  x3do:hasGeometry :Sphere_2_3_1_7_1_1_1_8_2_1_1 ;
  x3do:hasAppearance :Appearance_2_3_1_7_1_1_1_8_2_1_2 .
:Sphere_2_3_1_7_1_1_1_8_2_1_1 a owl:NamedIndividual, x3do:Sphere ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_8_2_1 ;
  x3do:radius .020 .
:Appearance_2_3_1_7_1_1_1_8_2_1_2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_1_8_2_1 ;
  x3do:hasMaterial :copper2-USE-1 .
:copper2-USE-1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Appearance_2_3_1_7_1_1_1_8_2_1_2 ;
  owl:sameAs :copper2 . # DEF matching this USE
:MyPlaneSensor a owl:NamedIndividual, x3do:PlaneSensor ;
  x3do:hasParent :MovingWindowTransform ;
  x3do:DEF 'MyPlaneSensor' ;
  x3do:description 'Lift Window' ;
  x3do:maxPosition ( 0 .361 ) .
:FrontSill a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FrontWindowGroup ;
  x3do:hasChildren :Transform_2_3_1_7_1_1_2_1, :Transform_2_3_1_7_1_1_2_2, :Transform_2_3_1_7_1_1_2_3, :Transform_2_3_1_7_1_1_2_4 ;
  x3do:DEF 'FrontSill' .
:Transform_2_3_1_7_1_1_2_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FrontSill ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_2_1_1 ;
  x3do:translation ( 0 -0.381 0 ) .
:Shape_2_3_1_7_1_1_2_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_2_1 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_2_1_1_1 ;
  x3do:hasAppearance :Frame .
:Box_2_3_1_7_1_1_2_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_1_1 ;
  x3do:size ( .502 .04 .201 ) .
:Frame a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_1_1 ;
  x3do:hasMaterial :Material_2_3_1_7_1_1_2_1_1_2_1 ;
  x3do:DEF 'Frame' .
:Material_2_3_1_7_1_1_2_1_1_2_1 a owl:NamedIndividual, x3do:Material ;
  x3do:hasParent :Frame ;
  x3do:diffuseColor ( .6 .5 .2 ) .
:Transform_2_3_1_7_1_1_2_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FrontSill ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_2_2_1 ;
  x3do:translation ( 0 .381 0 ) .
:Shape_2_3_1_7_1_1_2_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_2_2 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_2_2_1_1 ;
  x3do:hasAppearance :Frame-USE-1 .
:Box_2_3_1_7_1_1_2_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_2_1 ;
  x3do:size ( .502 .04 .201 ) .
:Frame-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_2_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_7_1_1_2_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FrontSill ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_2_3_1 ;
  x3do:translation ( .231 0 0 ) .
:Shape_2_3_1_7_1_1_2_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_2_3 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_2_3_1_1 ;
  x3do:hasAppearance :Frame-USE-2 .
:Box_2_3_1_7_1_1_2_3_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_3_1 ;
  x3do:size ( .04 .802 .201 ) .
:Frame-USE-2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_3_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_7_1_1_2_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FrontSill ;
  x3do:hasChildren :Shape_2_3_1_7_1_1_2_4_1 ;
  x3do:translation ( -0.231 0 0 ) .
:Shape_2_3_1_7_1_1_2_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_1_1_2_4 ;
  x3do:hasGeometry :Box_2_3_1_7_1_1_2_4_1_1 ;
  x3do:hasAppearance :Frame-USE-3 .
:Box_2_3_1_7_1_1_2_4_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_4_1 ;
  x3do:size ( .04 .802 .201 ) .
:Frame-USE-3 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_1_1_2_4_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:FrontWindowView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :FrontWindowGroup ;
  x3do:DEF 'FrontWindowView' ;
  x3do:description 'Front Window Opens Up' ;
  x3do:fieldOfView 1.2 ;
  x3do:orientation ( 0 1 0 3.14 ) ;
  x3do:position ( 0 0 -0.65 ) .
:ROUTE_2_3_1_7_1_1_4 a owl:NamedIndividual, x3do:ROUTE ;
  x3do:hasParent :FrontWindowGroup ;
  x3do:fromField 'translation_changed' ;
  x3do:fromNode 'MyPlaneSensor' ;
  x3do:toField 'set_translation' ;
  x3do:toNode 'MovingWindowTransform' .
:LeftWindowTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Window ;
  x3do:hasChildren :LeftWindowGroup ;
  x3do:DEF 'LeftWindowTransform' ;
  x3do:rotation ( 0 1 0 -1.57 ) ;
  x3do:translation ( -1.9 1.1 0 ) .
:LeftWindowGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :LeftWindowTransform ;
  x3do:hasChildren :Transform_2_3_1_7_2_1_1, :Transform_2_3_1_7_2_1_2 ;
  x3do:DEF 'LeftWindowGroup' .
:Transform_2_3_1_7_2_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LeftWindowGroup ;
  x3do:hasChildren :Shape_2_3_1_7_2_1_1_1 .
:Shape_2_3_1_7_2_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_2_1_1 ;
  x3do:hasGeometry :Box_2_3_1_7_2_1_1_1_1 ;
  x3do:hasAppearance :Glass-USE-1 .
:Box_2_3_1_7_2_1_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_2_1_1_1 ;
  x3do:size ( .899 .799 .002 ) .
:Glass-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_2_1_1_1 ;
  owl:sameAs :Glass . # DEF matching this USE
:Transform_2_3_1_7_2_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :LeftWindowGroup ;
  x3do:hasChildren :SideSillGroup .
:SideSillGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_1_7_2_1_2 ;
  x3do:hasChildren :Transform_2_3_1_7_2_1_2_1_1, :Transform_2_3_1_7_2_1_2_1_2, :Transform_2_3_1_7_2_1_2_1_3, :Transform_2_3_1_7_2_1_2_1_4 ;
  x3do:DEF 'SideSillGroup' .
:Transform_2_3_1_7_2_1_2_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :SideSillGroup ;
  x3do:hasChildren :Shape_2_3_1_7_2_1_2_1_1_1 ;
  x3do:translation ( 0 -0.381 0 ) .
:Shape_2_3_1_7_2_1_2_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_2_1_2_1_1 ;
  x3do:hasGeometry :Box_2_3_1_7_2_1_2_1_1_1_1 ;
  x3do:hasAppearance :Frame-USE-4 .
:Box_2_3_1_7_2_1_2_1_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_1_1 ;
  x3do:size ( .902 .04 .201 ) .
:Frame-USE-4 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_1_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_7_2_1_2_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :SideSillGroup ;
  x3do:hasChildren :Shape_2_3_1_7_2_1_2_1_2_1 ;
  x3do:translation ( 0 .381 0 ) .
:Shape_2_3_1_7_2_1_2_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_2_1_2_1_2 ;
  x3do:hasGeometry :Box_2_3_1_7_2_1_2_1_2_1_1 ;
  x3do:hasAppearance :Frame-USE-5 .
:Box_2_3_1_7_2_1_2_1_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_2_1 ;
  x3do:size ( .902 .04 .201 ) .
:Frame-USE-5 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_2_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_7_2_1_2_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :SideSillGroup ;
  x3do:hasChildren :Shape_2_3_1_7_2_1_2_1_3_1 ;
  x3do:translation ( .431 0 0 ) .
:Shape_2_3_1_7_2_1_2_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_2_1_2_1_3 ;
  x3do:hasGeometry :Box_2_3_1_7_2_1_2_1_3_1_1 ;
  x3do:hasAppearance :Frame-USE-6 .
:Box_2_3_1_7_2_1_2_1_3_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_3_1 ;
  x3do:size ( .04 .802 .201 ) .
:Frame-USE-6 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_3_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_7_2_1_2_1_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :SideSillGroup ;
  x3do:hasChildren :Shape_2_3_1_7_2_1_2_1_4_1 ;
  x3do:translation ( -0.431 0 0 ) .
:Shape_2_3_1_7_2_1_2_1_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_2_1_2_1_4 ;
  x3do:hasGeometry :Box_2_3_1_7_2_1_2_1_4_1_1 ;
  x3do:hasAppearance :Frame-USE-7 .
:Box_2_3_1_7_2_1_2_1_4_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_4_1 ;
  x3do:size ( .04 .802 .201 ) .
:Frame-USE-7 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_2_1_2_1_4_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:RightWindowTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Window ;
  x3do:hasChildren :RightWindowGroup ;
  x3do:DEF 'RightWindowTransform' ;
  x3do:rotation ( 0 1 0 1.57 ) ;
  x3do:translation ( 1.9 1.1 0 ) .
:RightWindowGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :RightWindowTransform ;
  x3do:hasChildren :Transform_2_3_1_7_3_1_1, :Transform_2_3_1_7_3_1_2 ;
  x3do:DEF 'RightWindowGroup' .
:Transform_2_3_1_7_3_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RightWindowGroup ;
  x3do:hasChildren :Shape_2_3_1_7_3_1_1_1 .
:Shape_2_3_1_7_3_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_7_3_1_1 ;
  x3do:hasGeometry :Box_2_3_1_7_3_1_1_1_1 ;
  x3do:hasAppearance :Glass-USE-2 .
:Box_2_3_1_7_3_1_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_7_3_1_1_1 ;
  x3do:size ( .899 .799 .002 ) .
:Glass-USE-2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_7_3_1_1_1 ;
  owl:sameAs :Glass . # DEF matching this USE
:Transform_2_3_1_7_3_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RightWindowGroup ;
  x3do:hasChildren :SideSillGroup-USE-1 .
:SideSillGroup-USE-1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_1_7_3_1_2 ;
  owl:sameAs :SideSillGroup . # DEF matching this USE
:MessageBoardTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :Transform_2_3_1_8_1, :Transform_2_3_1_8_2 ;
  x3do:DEF 'MessageBoardTransform' .
:Transform_2_3_1_8_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MessageBoardTransform ;
  x3do:hasChildren :Shape_2_3_1_8_1_1 ;
  x3do:scale ( 1.5 1 1 ) ;
  x3do:translation ( 0 1.2 -1.299 ) .
:Shape_2_3_1_8_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_8_1 ;
  x3do:hasAppearance :Appearance_2_3_1_8_1_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_1_8_1_1_2 .
:Appearance_2_3_1_8_1_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_8_1_1 ;
  x3do:hasTexture :ImageTexture_2_3_1_8_1_1_1_1 .
:ImageTexture_2_3_1_8_1_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_8_1_1_1 ;
  x3do:repeatS false ;
  x3do:repeatT false ;
  x3do:url '"MessageBoard.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/MessageBoard.jpg"' .
:IndexedFaceSet_2_3_1_8_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_1_8_1_1 ;
  x3do:hasCoord :Coordinate_2_3_1_8_1_1_2_1 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false .
:Coordinate_2_3_1_8_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_8_1_1_2 ;
  x3do:point ( -0.5 -0.5 0 .5 -0.5 0 .5 .5 0 -0.5 .5 0 ) .
:Transform_2_3_1_8_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MessageBoardTransform ;
  x3do:hasChildren :MessageBoardFrameGroup ;
  x3do:translation ( 0 1.2 -1.3 ) .
:MessageBoardFrameGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_1_8_2 ;
  x3do:hasChildren :Transform_2_3_1_8_2_1_1, :Transform_2_3_1_8_2_1_2, :Transform_2_3_1_8_2_1_3, :Transform_2_3_1_8_2_1_4 ;
  x3do:DEF 'MessageBoardFrameGroup' .
:Transform_2_3_1_8_2_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MessageBoardFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_8_2_1_1_1 ;
  x3do:translation ( .005 -0.461 0 ) .
:Shape_2_3_1_8_2_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_8_2_1_1 ;
  x3do:hasGeometry :Box_2_3_1_8_2_1_1_1_1 ;
  x3do:hasAppearance :Frame-USE-8 .
:Box_2_3_1_8_2_1_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_8_2_1_1_1 ;
  x3do:size ( 1.548 .075 .04 ) .
:Frame-USE-8 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_8_2_1_1_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_8_2_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MessageBoardFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_8_2_1_2_1 ;
  x3do:translation ( .005 .485 0 ) .
:Shape_2_3_1_8_2_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_8_2_1_2 ;
  x3do:hasGeometry :Box_2_3_1_8_2_1_2_1_1 ;
  x3do:hasAppearance :Frame-USE-9 .
:Box_2_3_1_8_2_1_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_8_2_1_2_1 ;
  x3do:size ( 1.548 .075 .04 ) .
:Frame-USE-9 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_8_2_1_2_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_8_2_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MessageBoardFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_8_2_1_3_1 ;
  x3do:translation ( .741 0 0 ) .
:Shape_2_3_1_8_2_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_8_2_1_3 ;
  x3do:hasGeometry :Box_2_3_1_8_2_1_3_1_1 ;
  x3do:hasAppearance :Frame-USE-10 .
:Box_2_3_1_8_2_1_3_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_8_2_1_3_1 ;
  x3do:size ( .075 .9 .04 ) .
:Frame-USE-10 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_8_2_1_3_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_8_2_1_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :MessageBoardFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_8_2_1_4_1 ;
  x3do:translation ( -0.730 0 0 ) .
:Shape_2_3_1_8_2_1_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_8_2_1_4 ;
  x3do:hasGeometry :Box_2_3_1_8_2_1_4_1_1 ;
  x3do:hasAppearance :Frame-USE-11 .
:Box_2_3_1_8_2_1_4_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_8_2_1_4_1 ;
  x3do:size ( .075 .9 .04 ) .
:Frame-USE-11 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_8_2_1_4_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:RealStuffTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :House ;
  x3do:hasChildren :Transform_2_3_1_9_1, :Transform_2_3_1_9_2 ;
  x3do:DEF 'RealStuffTransform' ;
  x3do:scale ( .6 .6 .6 ) ;
  x3do:translation ( -1.15 1.2 1.299 ) .
:Transform_2_3_1_9_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RealStuffTransform ;
  x3do:hasChildren :Shape_2_3_1_9_1_1 ;
  x3do:rotation ( 0 1 0 3.14 ) ;
  x3do:scale ( 1.5 1 1 ) .
:Shape_2_3_1_9_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_9_1 ;
  x3do:hasAppearance :Appearance_2_3_1_9_1_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_1_9_1_1_2 .
:Appearance_2_3_1_9_1_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_9_1_1 ;
  x3do:hasTexture :ImageTexture_2_3_1_9_1_1_1_1 .
:ImageTexture_2_3_1_9_1_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_1_9_1_1_1 ;
  x3do:repeatS false ;
  x3do:repeatT false ;
  x3do:url '"RealStuff.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/RealStuff.jpg"' .
:IndexedFaceSet_2_3_1_9_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_1_9_1_1 ;
  x3do:hasCoord :Coordinate_2_3_1_9_1_1_2_1 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false .
:Coordinate_2_3_1_9_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_1_9_1_1_2 ;
  x3do:point ( -0.5 -0.5 0 .5 -0.5 0 .5 .5 0 -0.5 .5 0 ) .
:Transform_2_3_1_9_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RealStuffTransform ;
  x3do:hasChildren :RealStuffFrameGroup ;
  x3do:scale ( 1.06 1.06 1.06 ) .
:RealStuffFrameGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_1_9_2 ;
  x3do:hasChildren :Transform_2_3_1_9_2_1_1, :Transform_2_3_1_9_2_1_2, :Transform_2_3_1_9_2_1_3, :Transform_2_3_1_9_2_1_4 ;
  x3do:DEF 'RealStuffFrameGroup' .
:Transform_2_3_1_9_2_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RealStuffFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_9_2_1_1_1 ;
  x3do:translation ( .005 -0.461 0 ) .
:Shape_2_3_1_9_2_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_9_2_1_1 ;
  x3do:hasGeometry :Box_2_3_1_9_2_1_1_1_1 ;
  x3do:hasAppearance :Frame-USE-12 .
:Box_2_3_1_9_2_1_1_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_9_2_1_1_1 ;
  x3do:size ( 1.548 .075 .04 ) .
:Frame-USE-12 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_9_2_1_1_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_9_2_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RealStuffFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_9_2_1_2_1 ;
  x3do:translation ( .005 .485 0 ) .
:Shape_2_3_1_9_2_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_9_2_1_2 ;
  x3do:hasGeometry :Box_2_3_1_9_2_1_2_1_1 ;
  x3do:hasAppearance :Frame-USE-13 .
:Box_2_3_1_9_2_1_2_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_9_2_1_2_1 ;
  x3do:size ( 1.548 .075 .04 ) .
:Frame-USE-13 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_9_2_1_2_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_9_2_1_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RealStuffFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_9_2_1_3_1 ;
  x3do:translation ( .741 0 0 ) .
:Shape_2_3_1_9_2_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_9_2_1_3 ;
  x3do:hasGeometry :Box_2_3_1_9_2_1_3_1_1 ;
  x3do:hasAppearance :Frame-USE-14 .
:Box_2_3_1_9_2_1_3_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_9_2_1_3_1 ;
  x3do:size ( .075 .9 .04 ) .
:Frame-USE-14 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_9_2_1_3_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Transform_2_3_1_9_2_1_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :RealStuffFrameGroup ;
  x3do:hasChildren :Shape_2_3_1_9_2_1_4_1 ;
  x3do:translation ( -0.730 0 0 ) .
:Shape_2_3_1_9_2_1_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_1_9_2_1_4 ;
  x3do:hasGeometry :Box_2_3_1_9_2_1_4_1_1 ;
  x3do:hasAppearance :Frame-USE-15 .
:Box_2_3_1_9_2_1_4_1_1 a owl:NamedIndividual, x3do:Box ;
  x3do:hasParent :Shape_2_3_1_9_2_1_4_1 ;
  x3do:size ( .075 .9 .04 ) .
:Frame-USE-15 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_1_9_2_1_4_1 ;
  owl:sameAs :Frame . # DEF matching this USE
:Yard a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :World ;
  x3do:hasChildren :AllGrass, :Walkway, :Fence, :Trees, :AllBushes ;
  x3do:DEF 'Yard' .
:AllGrass a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Yard ;
  x3do:hasChildren :LeftGrass, :RightGrass, :LeftSideGrass, :RightSideGrass, :BackGrass ;
  x3do:DEF 'AllGrass' .
:LeftGrass a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllGrass ;
  x3do:hasChildren :Shape_2_3_2_1_1_1 ;
  x3do:DEF 'LeftGrass' ;
  x3do:translation ( 0 -0.011 0 ) .
:Shape_2_3_2_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :LeftGrass ;
  x3do:hasAppearance :GrassPattern ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_1_1_2 .
:GrassPattern a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_1_1 ;
  x3do:hasTexture :ImageTexture_2_3_2_1_1_1_1_1 ;
  x3do:DEF 'GrassPattern' .
:ImageTexture_2_3_2_1_1_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :GrassPattern ;
  x3do:url '"grass.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/grass.jpg"' .
:IndexedFaceSet_2_3_2_1_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_1_1_1 ;
  x3do:hasCoord :Coordinate_2_3_2_1_1_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_1_1_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_1_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_1_1_2 ;
  x3do:point ( -0.5 0 1.5 -5.5 0 1.5 -5.5 0 7.5 -0.5 0 7.5 ) .
:TextureCoordinate_2_3_2_1_1_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_1_1_2 ;
  x3do:point ( 0 0 10 0 10 10 0 10 ) .
:RightGrass a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllGrass ;
  x3do:hasChildren :Shape_2_3_2_1_2_1 ;
  x3do:DEF 'RightGrass' ;
  x3do:translation ( 0 -0.011 0 ) .
:Shape_2_3_2_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :RightGrass ;
  x3do:hasAppearance :GrassPattern-USE-1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_2_1_2 .
:GrassPattern-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_2_1 ;
  owl:sameAs :GrassPattern . # DEF matching this USE
:IndexedFaceSet_2_3_2_1_2_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_1_2_1 ;
  x3do:hasCoord :Coordinate_2_3_2_1_2_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_1_2_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_1_2_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_2_1_2 ;
  x3do:point ( .5 0 1.5 5.5 0 1.5 5.5 0 7.5 .5 0 7.5 ) .
:TextureCoordinate_2_3_2_1_2_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_2_1_2 ;
  x3do:point ( 0 0 10 0 10 10 0 10 ) .
:LeftSideGrass a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllGrass ;
  x3do:hasChildren :Shape_2_3_2_1_3_1 ;
  x3do:DEF 'LeftSideGrass' ;
  x3do:translation ( 0 -0.011 0 ) .
:Shape_2_3_2_1_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :LeftSideGrass ;
  x3do:hasAppearance :GrassPattern-USE-2 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_3_1_2 .
:GrassPattern-USE-2 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_3_1 ;
  owl:sameAs :GrassPattern . # DEF matching this USE
:IndexedFaceSet_2_3_2_1_3_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_1_3_1 ;
  x3do:hasCoord :Coordinate_2_3_2_1_3_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_1_3_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_1_3_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_3_1_2 ;
  x3do:point ( -2 0 1.5 -5.5 0 1.5 -5.5 0 -1.5 -2 0 -1.5 ) .
:TextureCoordinate_2_3_2_1_3_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_3_1_2 ;
  x3do:point ( 0 0 10 0 10 10 0 10 ) .
:RightSideGrass a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllGrass ;
  x3do:hasChildren :Shape_2_3_2_1_4_1 ;
  x3do:DEF 'RightSideGrass' ;
  x3do:translation ( 0 -0.011 0 ) .
:Shape_2_3_2_1_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :RightSideGrass ;
  x3do:hasAppearance :GrassPattern-USE-3 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_4_1_2 .
:GrassPattern-USE-3 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_4_1 ;
  owl:sameAs :GrassPattern . # DEF matching this USE
:IndexedFaceSet_2_3_2_1_4_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_1_4_1 ;
  x3do:hasCoord :Coordinate_2_3_2_1_4_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_1_4_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_1_4_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_4_1_2 ;
  x3do:point ( 2 0 1.5 5.5 0 1.5 5.5 0 -1.5 2 0 -1.5 ) .
:TextureCoordinate_2_3_2_1_4_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_4_1_2 ;
  x3do:point ( 0 0 10 0 10 10 0 10 ) .
:BackGrass a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllGrass ;
  x3do:hasChildren :Shape_2_3_2_1_5_1 ;
  x3do:DEF 'BackGrass' ;
  x3do:translation ( 0 -0.011 0 ) .
:Shape_2_3_2_1_5_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :BackGrass ;
  x3do:hasAppearance :GrassPattern-USE-4 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_1_5_1_2 .
:GrassPattern-USE-4 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_1_5_1 ;
  owl:sameAs :GrassPattern . # DEF matching this USE
:IndexedFaceSet_2_3_2_1_5_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_1_5_1 ;
  x3do:hasCoord :Coordinate_2_3_2_1_5_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_1_5_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_1_5_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_5_1_2 ;
  x3do:point ( -5.5 0 -1.5 5.5 0 -1.5 5.5 0 -7.5 -5.5 0 -7.5 ) .
:TextureCoordinate_2_3_2_1_5_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_1_5_1_2 ;
  x3do:point ( 0 0 30 0 30 15 0 15 ) .
:Walkway a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Yard ;
  x3do:hasChildren :Shape_2_3_2_2_1 ;
  x3do:DEF 'Walkway' ;
  x3do:translation ( 0 -0.011 0 ) .
:Shape_2_3_2_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Walkway ;
  x3do:hasAppearance :WalkwayConcrete ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_2_1_2 .
:WalkwayConcrete a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_2_1 ;
  x3do:hasTexture :ImageTexture_2_3_2_2_1_1_1 ;
  x3do:DEF 'WalkwayConcrete' .
:ImageTexture_2_3_2_2_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :WalkwayConcrete ;
  x3do:url '"Concrete.jpg" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/Concrete.jpg"' .
:IndexedFaceSet_2_3_2_2_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_2_1 ;
  x3do:hasCoord :Coordinate_2_3_2_2_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_2_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_2_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_2_1_2 ;
  x3do:point ( -0.5 0 1.5 .5 0 1.5 .5 0 7.5 -0.5 0 7.5 ) .
:TextureCoordinate_2_3_2_2_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_2_1_2 ;
  x3do:point ( 0 0 2 0 2 10 0 10 ) .
:Fence a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Yard ;
  x3do:hasChildren :FenceGroup, :Transform_2_3_2_3_2, :Transform_2_3_2_3_3, :Transform_2_3_2_3_4, :Transform_2_3_2_3_5 ;
  x3do:DEF 'Fence' .
:FenceGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Fence ;
  x3do:hasChildren :FenceSection ;
  x3do:DEF 'FenceGroup' .
:FenceSection a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FenceGroup ;
  x3do:hasChildren :Transform_2_3_2_3_1_1_1 ;
  x3do:DEF 'FenceSection' .
:Transform_2_3_2_3_1_1_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FenceSection ;
  x3do:hasChildren :Group_2_3_2_3_1_1_1_1 ;
  x3do:translation ( 0 0 7.5 ) .
:Group_2_3_2_3_1_1_1_1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_3_1_1_1 ;
  x3do:hasChildren :Shape_2_3_2_3_1_1_1_1_1 .
:Shape_2_3_2_3_1_1_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Group_2_3_2_3_1_1_1_1 ;
  x3do:hasAppearance :RightFence ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_3_1_1_1_1_1_2 .
:RightFence a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_3_1_1_1_1_1 ;
  x3do:hasTexture :FenceImage ;
  x3do:DEF 'RightFence' .
:FenceImage a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :RightFence ;
  x3do:DEF 'FenceImage' ;
  x3do:url '"Fence.png" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/Fence.png"' .
:IndexedFaceSet_2_3_2_3_1_1_1_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_3_1_1_1_1_1 ;
  x3do:hasCoord :Coordinate_2_3_2_3_1_1_1_1_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_3_1_1_1_1_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_3_1_1_1_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_1_1_1_1_1_2 ;
  x3do:point ( 0.5 0 0 5.5 0 0 5.5 0.5 0 0.5 0.5 0 ) .
:TextureCoordinate_2_3_2_3_1_1_1_1_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_1_1_1_1_1_2 ;
  x3do:point ( 0 0 10 0 10 1 0 1 ) .
:Transform_2_3_2_3_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Fence ;
  x3do:hasChildren :FenceGroup-USE-1 ;
  x3do:center ( 0 0 7.5 ) ;
  x3do:rotation ( 0 1 0 3.14 ) .
:FenceGroup-USE-1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_3_2 ;
  owl:sameAs :FenceGroup . # DEF matching this USE
:Transform_2_3_2_3_3 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Fence ;
  x3do:hasChildren :Shape_2_3_2_3_3_1 ;
  x3do:translation ( 5.5 0 0 ) .
:Shape_2_3_2_3_3_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_3_3 ;
  x3do:hasAppearance :Appearance_2_3_2_3_3_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_3_3_1_2 .
:Appearance_2_3_2_3_3_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_3_3_1 ;
  x3do:hasTexture :FenceImage-USE-1 .
:FenceImage-USE-1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_2_3_3_1_1 ;
  owl:sameAs :FenceImage . # DEF matching this USE
:IndexedFaceSet_2_3_2_3_3_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_3_3_1 ;
  x3do:hasCoord :Coordinate_2_3_2_3_3_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_3_3_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_3_3_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_3_1_2 ;
  x3do:point ( 0 0 7.5 0 0 -7.5 0 0.5 -7.5 0 0.5 7.5 ) .
:TextureCoordinate_2_3_2_3_3_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_3_1_2 ;
  x3do:point ( 0 0 30 0 30 1 0 1 ) .
:Transform_2_3_2_3_4 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Fence ;
  x3do:hasChildren :Shape_2_3_2_3_4_1 ;
  x3do:translation ( -5.5 0 0 ) .
:Shape_2_3_2_3_4_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_3_4 ;
  x3do:hasAppearance :Appearance_2_3_2_3_4_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_3_4_1_2 .
:Appearance_2_3_2_3_4_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_3_4_1 ;
  x3do:hasTexture :FenceImage-USE-2 .
:FenceImage-USE-2 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_2_3_4_1_1 ;
  owl:sameAs :FenceImage . # DEF matching this USE
:IndexedFaceSet_2_3_2_3_4_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_3_4_1 ;
  x3do:hasCoord :Coordinate_2_3_2_3_4_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_3_4_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_3_4_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_4_1_2 ;
  x3do:point ( 0 0 7.5 0 0 -7.5 0 0.5 -7.5 0 0.5 7.5 ) .
:TextureCoordinate_2_3_2_3_4_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_4_1_2 ;
  x3do:point ( 0 0 30 0 30 1 0 1 ) .
:Transform_2_3_2_3_5 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Fence ;
  x3do:hasChildren :Shape_2_3_2_3_5_1 ;
  x3do:rotation ( 0 1 0 3.14 ) ;
  x3do:translation ( 0 0 -7.5 ) .
:Shape_2_3_2_3_5_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_3_5 ;
  x3do:hasAppearance :Appearance_2_3_2_3_5_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_3_5_1_2 .
:Appearance_2_3_2_3_5_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_3_5_1 ;
  x3do:hasTexture :FenceImage-USE-3 .
:FenceImage-USE-3 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_2_3_5_1_1 ;
  owl:sameAs :FenceImage . # DEF matching this USE
:IndexedFaceSet_2_3_2_3_5_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_3_5_1 ;
  x3do:hasCoord :Coordinate_2_3_2_3_5_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_3_5_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_3_5_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_5_1_2 ;
  x3do:point ( -5.5 0 0 5.5 0 0 5.5 0.5 0 -5.5 0.5 0 ) .
:TextureCoordinate_2_3_2_3_5_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_3_5_1_2 ;
  x3do:point ( 0 0 22 0 22 1 0 1 ) .
:Trees a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Yard ;
  x3do:hasChildren :Transform_2_3_2_4_1, :Transform_2_3_2_4_2 ;
  x3do:DEF 'Trees' .
:Transform_2_3_2_4_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Trees ;
  x3do:hasChildren :FirstTree ;
  x3do:translation ( 4 .5 -1 ) .
:FirstTree a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_4_1 ;
  x3do:hasChildren :Shape_2_3_2_4_1_1_1, :Transform_2_3_2_4_1_1_2 ;
  x3do:DEF 'FirstTree' .
:Shape_2_3_2_4_1_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :FirstTree ;
  x3do:hasAppearance :Tree1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_4_1_1_1_2 .
:Tree1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_4_1_1_1 ;
  x3do:hasTexture :ImageTexture_2_3_2_4_1_1_1_1_1 ;
  x3do:DEF 'Tree1' .
:ImageTexture_2_3_2_4_1_1_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Tree1 ;
  x3do:repeatS false ;
  x3do:repeatT false ;
  x3do:url '"tree1.png" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/tree1.png"' .
:IndexedFaceSet_2_3_2_4_1_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_4_1_1_1 ;
  x3do:hasCoord :Coordinate_2_3_2_4_1_1_1_2_1 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_4_1_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_4_1_1_1_2 ;
  x3do:point ( -0.5 -0.5 0 0.5 -0.5 0 0.5 0.5 0 -0.5 0.5 0 ) .
:Transform_2_3_2_4_1_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :FirstTree ;
  x3do:hasChildren :Shape_2_3_2_4_1_1_2_1 ;
  x3do:rotation ( 0 1 0 1.57 ) ;
  x3do:translation ( .03 0 .02 ) .
:Shape_2_3_2_4_1_1_2_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_4_1_1_2 ;
  x3do:hasAppearance :Tree1-USE-1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_4_1_1_2_1_2 .
:Tree1-USE-1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_2_4_1_1_2_1 ;
  owl:sameAs :Tree1 . # DEF matching this USE
:IndexedFaceSet_2_3_2_4_1_1_2_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_2_4_1_1_2_1 ;
  x3do:hasCoord :Coordinate_2_3_2_4_1_1_2_1_2_1 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false .
:Coordinate_2_3_2_4_1_1_2_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_4_1_1_2_1_2 ;
  x3do:point ( -0.5 -0.5 0 0.5 -0.5 0 0.5 0.5 0 -0.5 0.5 0 ) .
:Transform_2_3_2_4_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Trees ;
  x3do:hasChildren :FirstTree-USE-1 ;
  x3do:translation ( -4 .5 -1 ) .
:FirstTree-USE-1 a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_4_2 ;
  owl:sameAs :FirstTree . # DEF matching this USE
:AllBushes a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Yard ;
  x3do:hasChildren :Transform_2_3_2_5_1, :Transform_2_3_2_5_2 ;
  x3do:DEF 'AllBushes' .
:Transform_2_3_2_5_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllBushes ;
  x3do:hasChildren :Bushes ;
  x3do:translation ( 0 0 -7 ) .
:Bushes a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Transform_2_3_2_5_1 ;
  x3do:hasChildren :BushRow, :Transform_2_3_2_5_1_1_2 ;
  x3do:DEF 'Bushes' .
:BushRow a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Bushes ;
  x3do:hasAppearance :BushPattern ;
  x3do:hasGeometry :IndexedFaceSet_2_3_2_5_1_1_1_2 ;
  x3do:DEF 'BushRow' .
:BushPattern a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :BushRow ;
  x3do:hasTexture :ImageTexture_2_3_2_5_1_1_1_1_1 ;
  x3do:DEF 'BushPattern' .
:ImageTexture_2_3_2_5_1_1_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :BushPattern ;
  x3do:repeatT false ;
  x3do:url '"BushPattern.png" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/BushPattern.png"' .
:IndexedFaceSet_2_3_2_5_1_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :BushRow ;
  x3do:hasCoord :Coordinate_2_3_2_5_1_1_1_2_1 ;
  x3do:hasTexCoord :TextureCoordinate_2_3_2_5_1_1_1_2_2 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false ;
  x3do:texCoordIndex ( 0 1 2 3 ) .
:Coordinate_2_3_2_5_1_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_5_1_1_1_2 ;
  x3do:point ( -5.5 0 0 5.5 0 0 5.5 0.5 0 -5.5 0.5 0 ) .
:TextureCoordinate_2_3_2_5_1_1_1_2_2 a owl:NamedIndividual, x3do:TextureCoordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_2_5_1_1_1_2 ;
  x3do:point ( 0 0 20 0 20 1 0 1 ) .
:Transform_2_3_2_5_1_1_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Bushes ;
  x3do:hasChildren :BushRow-USE-1 ;
  x3do:translation ( 0 0 -0.3 ) .
:BushRow-USE-1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :Transform_2_3_2_5_1_1_2 ;
  owl:sameAs :BushRow . # DEF matching this USE
:Transform_2_3_2_5_2 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :AllBushes ;
  x3do:hasChildren :Transform_2_3_2_5_2_1 ;
  x3do:translation ( 0 .25 -13.5 ) .
:Transform_2_3_2_5_2_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Transform_2_3_2_5_2 ;
  x3do:hasChildren :BushesView ;
  x3do:rotation ( 0 1 0 .45 ) .
:BushesView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :Transform_2_3_2_5_2_1 ;
  x3do:DEF 'BushesView' ;
  x3do:description 'Bushes in Backyard' ;
  x3do:fieldOfView 1.2 .
:FurnishingsTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :World ;
  x3do:hasChildren :Furnishing ;
  x3do:DEF 'FurnishingsTransform' .
:Furnishing a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :FurnishingsTransform ;
  x3do:hasChildren :ToyTransform, :MatTransform, :TableTranslation, :BlueChairTransform, :GreenChairTransform, :BenchTransform, :Transform_2_3_3_1_7 ;
  x3do:DEF 'Furnishing' .
:ToyTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Furnishing ;
  x3do:hasChildren :Inline_2_3_3_1_1_1 ;
  x3do:DEF 'ToyTransform' ;
  x3do:rotation ( 0 1 0 -1.57 ) ;
  x3do:scale ( .05 .05 .05 ) ;
  x3do:translation ( .15 .7 0 ) .
:Inline_2_3_3_1_1_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :ToyTransform ;
  x3do:url '"IkeaBeadToy.x3d" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaBeadToy.x3d" "IkeaBeadToy.wrl" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaBeadToy.wrl"' .
:MatTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Furnishing ;
  x3do:hasChildren :AlphabetMat ;
  x3do:DEF 'MatTransform' ;
  x3do:scale ( 1 1 .67 ) ;
  x3do:translation ( 0 .001 0 ) .
:AlphabetMat a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :MatTransform ;
  x3do:hasChildren :Shape_2_3_3_1_2_1_1 ;
  x3do:DEF 'AlphabetMat' .
:Shape_2_3_3_1_2_1_1 a owl:NamedIndividual, x3do:Shape ;
  x3do:hasParent :AlphabetMat ;
  x3do:hasAppearance :Appearance_2_3_3_1_2_1_1_1 ;
  x3do:hasGeometry :IndexedFaceSet_2_3_3_1_2_1_1_2 .
:Appearance_2_3_3_1_2_1_1_1 a owl:NamedIndividual, x3do:Appearance ;
  x3do:hasParent :Shape_2_3_3_1_2_1_1 ;
  x3do:hasTexture :ImageTexture_2_3_3_1_2_1_1_1_1 .
:ImageTexture_2_3_3_1_2_1_1_1_1 a owl:NamedIndividual, x3do:ImageTexture ;
  x3do:hasParent :Appearance_2_3_3_1_2_1_1_1 ;
  x3do:url '"MatTransparent.png" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/MatTransparent.png"' .
:IndexedFaceSet_2_3_3_1_2_1_1_2 a owl:NamedIndividual, x3do:IndexedFaceSet ;
  x3do:hasParent :Shape_2_3_3_1_2_1_1 ;
  x3do:hasCoord :Coordinate_2_3_3_1_2_1_1_2_1 ;
  x3do:coordIndex ( 0 1 2 3 ) ;
  x3do:solid false .
:Coordinate_2_3_3_1_2_1_1_2_1 a owl:NamedIndividual, x3do:Coordinate ;
  x3do:hasParent :IndexedFaceSet_2_3_3_1_2_1_1_2 ;
  x3do:point ( -1 0 -1 1 0 -1 1 0 1 -1 0 1 ) .
:TableTranslation a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Furnishing ;
  x3do:hasChildren :Inline_2_3_3_1_3_1 ;
  x3do:DEF 'TableTranslation' ;
  x3do:translation ( 0 .61 0 ) .
:Inline_2_3_3_1_3_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :TableTranslation ;
  x3do:url '"IkeaTable.x3d" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaTable.x3d" "IkeaTable.wrl" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaTable.wrl"' .
:BlueChairTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Furnishing ;
  x3do:hasChildren :Inline_2_3_3_1_4_1 ;
  x3do:DEF 'BlueChairTransform' ;
  x3do:rotation ( 0 1 0 1.57 ) ;
  x3do:translation ( -0.67 .31 0 ) .
:Inline_2_3_3_1_4_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :BlueChairTransform ;
  x3do:url '"IkeaBlueChair.x3d" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaBlueChair.x3d" "IkeaBlueChair.wrl" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaBlueChair.wrl"' .
:GreenChairTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Furnishing ;
  x3do:hasChildren :Inline_2_3_3_1_5_1 ;
  x3do:DEF 'GreenChairTransform' ;
  x3do:rotation ( 0 1 0 4.71 ) ;
  x3do:translation ( .67 .31 0 ) .
:Inline_2_3_3_1_5_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :GreenChairTransform ;
  x3do:url '"IkeaGreenChair.x3d" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaGreenChair.x3d" "IkeaGreenChair.wrl" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaGreenChair.wrl"' .
:BenchTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Furnishing ;
  x3do:hasChildren :Inline_2_3_3_1_6_1 ;
  x3do:DEF 'BenchTransform' ;
  x3do:rotation ( 0 1 0 3.14 ) ;
  x3do:translation ( 0 .31 .45 ) .
:Inline_2_3_3_1_6_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :BenchTransform ;
  x3do:url '"IkeaBench.x3d" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaBench.x3d" "IkeaBench.wrl" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaBench.wrl"' .
:Transform_2_3_3_1_7 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :Furnishing ;
  x3do:hasChildren :Inline_2_3_3_1_7_1 ;
  x3do:rotation ( 0 1 0 .7 ) ;
  x3do:scale ( .015 .015 .015 ) ;
  x3do:translation ( -1.05 0 -0.45 ) .
:Inline_2_3_3_1_7_1 a owl:NamedIndividual, x3do:Inline ;
  x3do:hasParent :Transform_2_3_3_1_7 ;
  x3do:url '"IkeaRockingHorse.x3d" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaRockingHorse.x3d" "IkeaRockingHorse.wrl" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/IkeaRockingHorse.wrl"' .
:ViewpointsGroup a owl:NamedIndividual, x3do:Group ;
  x3do:hasParent :Scene ;
  x3do:hasChildren :FrontEntrance, :AtticView, :TreeViewTransform, :LightView, :AboveOutside, :OverheadViewTransform, :FromMessageBoardTransform, :InRoom, :RealStuffView, :HorseTransform ;
  x3do:DEF 'ViewpointsGroup' .
:FrontEntrance a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:DEF 'FrontEntrance' ;
  x3do:description 'Front Entrance' ;
  x3do:orientation ( 1 0 0 -0.15 ) ;
  x3do:position ( 0 1.15 7 ) .
:AtticView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:DEF 'AtticView' ;
  x3do:description 'Inside Attic' ;
  x3do:fieldOfView 1.3 ;
  x3do:orientation ( 1 0 0 0 ) ;
  x3do:position ( 0 2.3 .6 ) .
:TreeViewTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:hasChildren :TreeView ;
  x3do:DEF 'TreeViewTransform' ;
  x3do:center ( 5 1.3 0 ) ;
  x3do:rotation ( 0 1 0 .78 ) .
:TreeView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :TreeViewTransform ;
  x3do:DEF 'TreeView' ;
  x3do:description 'Tree Outside' ;
  x3do:fieldOfView 1.2 ;
  x3do:orientation ( 1 0 0 -0.5 ) ;
  x3do:position ( 5 1.3 0 ) .
:LightView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:DEF 'LightView' ;
  x3do:description 'LightBulb' ;
  x3do:fieldOfView 1.3 ;
  x3do:orientation ( 1 0 0 0 ) ;
  x3do:position ( 0 1.9 .6 ) .
:AboveOutside a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:DEF 'AboveOutside' ;
  x3do:description 'Aerial View' ;
  x3do:orientation ( 1 0 0 -0.35 ) ;
  x3do:position ( 0 5 10 ) .
:OverheadViewTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:hasChildren :Transform_2_4_6_1 ;
  x3do:DEF 'OverheadViewTransform' ;
  x3do:translation ( 1.4 1.9 1.1 ) .
:Transform_2_4_6_1 a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :OverheadViewTransform ;
  x3do:hasChildren :OverheadView ;
  x3do:rotation ( 0 1 0 .78 ) .
:OverheadView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :Transform_2_4_6_1 ;
  x3do:DEF 'OverheadView' ;
  x3do:description 'OverHead' ;
  x3do:fieldOfView 1.2 ;
  x3do:orientation ( 1 0 0 -0.45 ) ;
  x3do:position ( 0 0 0 ) .
:FromMessageBoardTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:hasChildren :FromMessageBoardView ;
  x3do:DEF 'FromMessageBoardTransform' ;
  x3do:rotation ( 0 1 0 3.14 ) .
:FromMessageBoardView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :FromMessageBoardTransform ;
  x3do:DEF 'FromMessageBoardView' ;
  x3do:description 'Back Against Board' ;
  x3do:fieldOfView 1.3 ;
  x3do:orientation ( 1 0 0 -0.2 ) ;
  x3do:position ( 0 1 .9 ) .
:InRoom a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:DEF 'InRoom' ;
  x3do:description 'Enter Room' ;
  x3do:fieldOfView 1.2 ;
  x3do:orientation ( 1 0 0 -0.15 ) ;
  x3do:position ( 0 1 1.3 ) .
:RealStuffView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:DEF 'RealStuffView' ;
  x3do:description 'Real Stuff Picture' ;
  x3do:orientation ( 0 1 0 3.14 ) ;
  x3do:position ( -1.15 1.2 .5 ) .
:HorseTransform a owl:NamedIndividual, x3do:Transform ;
  x3do:hasParent :ViewpointsGroup ;
  x3do:hasChildren :HorseSideView ;
  x3do:DEF 'HorseTransform' .
:HorseSideView a owl:NamedIndividual, x3do:Viewpoint ;
  x3do:hasParent :HorseTransform ;
  x3do:DEF 'HorseSideView' ;
  x3do:description 'Horse Side View' ;
  x3do:position ( -1 .3 .5 ) .
