1#Inventor V2.1 ascii
2
3Group {
4 Separator {
5  DirectionalLight {
6    direction -1 -1 0.5
7  }
8  DEF camera PerspectiveCamera {
9    position 37.6813 -29.2411 26.4421
10    orientation 0.352193 0.189524 0.126368 0.907784
11  }
12  SwitchboardOperator {
13    enable [ FALSE ]
14    key [ SPACE ]
15    behavior [ HOLD ]
16    RotationXYZ {
17      axis X
18      angle 0.005
19    }
20  }
21  SwitchboardOperator {
22    enable [ FALSE ]
23    key [ RETURN ]
24    behavior [ HOLD ]
25    RotationXYZ {
26      axis Y
27      angle 0.002
28    }
29  }
30  Separator {
31    Material { diffuseColor 0.6 0.6 0.6 }
32    Translation { translation 17.5 -5 -1 }
33    Scale { scaleFactor 20 8 1 }
34    Cube {}
35  }
36  Separator {
37    Group {
38      SwitchboardOperator {
39        enable [ FALSE TRUE FALSE ]
40        key [ GRAVE UNDEFINED GRAVE ]
41        behavior [ HOLD NONE HOLD ]
42        Translation { translation 0 0 -0.5 }
43        Separator {
44          Cube {} # GRAVE
45          DEF NumericLabelTransform Group {
46            Translation { translation -0.7 -0.7 1 }
47            Scale { scaleFactor 0.1 0.1 0.1 }
48            BaseColor { rgb 0 0 0 }
49            PolygonOffset {
50              factor -1
51              on TRUE
52            }
53          }
54          AsciiText { string "`" }
55        }
56        Translation { translation 0 0 0.5 }
57      }
58      Translation { translation 2.5 0 0 }
59      SwitchboardOperator {
60        enable [ FALSE TRUE FALSE ]
61        key [ NUMBER_1 UNDEFINED NUMBER_1 ]
62        behavior [ HOLD NONE HOLD ]
63        Translation { translation 0 0 -0.5 }
64        Separator {
65          Cube {} # 1
66          USE NumericLabelTransform
67          AsciiText { string "1" }
68        }
69        Translation { translation 0 0 0.5 }
70      }
71      Translation { translation 2.5 0 0 }
72      SwitchboardOperator {
73        enable [ FALSE TRUE FALSE ]
74        key [ NUMBER_2 UNDEFINED NUMBER_2 ]
75        behavior [ HOLD NONE HOLD ]
76        Translation { translation 0 0 -0.5 }
77        Separator {
78          Cube {} # 2
79          USE NumericLabelTransform
80          AsciiText { string "2" }
81        }
82        Translation { translation 0 0 0.5 }
83      }
84      Translation { translation 2.5 0 0 }
85      SwitchboardOperator {
86        enable [ FALSE TRUE FALSE ]
87        key [ NUMBER_3 UNDEFINED NUMBER_3 ]
88        behavior [ HOLD NONE HOLD ]
89        Translation { translation 0 0 -0.5 }
90        Separator {
91          Cube {} # 3
92          USE NumericLabelTransform
93          AsciiText { string "3" }
94        }
95        Translation { translation 0 0 0.5 }
96      }
97      Translation { translation 2.5 0 0 }
98      SwitchboardOperator {
99        enable [ FALSE TRUE FALSE ]
100        key [ NUMBER_4 UNDEFINED NUMBER_4 ]
101        behavior [ HOLD NONE HOLD ]
102        Translation { translation 0 0 -0.5 }
103        Separator {
104          Cube {} # 4
105          USE NumericLabelTransform
106          AsciiText { string "4" }
107        }
108        Translation { translation 0 0 0.5 }
109      }
110      Translation { translation 2.5 0 0 }
111      SwitchboardOperator {
112        enable [ FALSE TRUE FALSE ]
113        key [ NUMBER_5 UNDEFINED NUMBER_5 ]
114        behavior [ HOLD NONE HOLD ]
115        Translation { translation 0 0 -0.5 }
116        Separator {
117          Cube {} # 5
118          USE NumericLabelTransform
119          AsciiText { string "5" }
120        }
121        Translation { translation 0 0 0.5 }
122      }
123      Translation { translation 2.5 0 0 }
124      SwitchboardOperator {
125        enable [ FALSE TRUE FALSE ]
126        key [ NUMBER_6 UNDEFINED NUMBER_6 ]
127        behavior [ HOLD NONE HOLD ]
128        Translation { translation 0 0 -0.5 }
129        Separator {
130          Cube {} # 6
131          USE NumericLabelTransform
132          AsciiText { string "6" }
133        }
134        Translation { translation 0 0 0.5 }
135      }
136      Translation { translation 2.5 0 0 }
137      SwitchboardOperator {
138        enable [ FALSE TRUE FALSE ]
139        key [ NUMBER_7 UNDEFINED NUMBER_7 ]
140        behavior [ HOLD NONE HOLD ]
141        Translation { translation 0 0 -0.5 }
142        Separator {
143          Cube {} # 7
144          USE NumericLabelTransform
145          AsciiText { string "7" }
146        }
147        Translation { translation 0 0 0.5 }
148      }
149      Translation { translation 2.5 0 0 }
150      SwitchboardOperator {
151        enable [ FALSE TRUE FALSE ]
152        key [ NUMBER_8 UNDEFINED NUMBER_8 ]
153        behavior [ HOLD NONE HOLD ]
154        Translation { translation 0 0 -0.5 }
155        Separator {
156          Cube {} # 8
157          USE NumericLabelTransform
158          AsciiText { string "8" }
159        }
160        Translation { translation 0 0 0.5 }
161      }
162      Translation { translation 2.5 0 0 }
163      SwitchboardOperator {
164        enable [ FALSE TRUE FALSE ]
165        key [ NUMBER_9 UNDEFINED NUMBER_9 ]
166        behavior [ HOLD NONE HOLD ]
167        Translation { translation 0 0 -0.5 }
168        Separator {
169          Cube {} # 9
170          USE NumericLabelTransform
171          AsciiText { string "9" }
172        }
173        Translation { translation 0 0 0.5 }
174      }
175      Translation { translation 2.5 0 0 }
176      SwitchboardOperator {
177        enable [ FALSE TRUE FALSE ]
178        key [ NUMBER_0 UNDEFINED NUMBER_0 ]
179        behavior [ HOLD NONE HOLD ]
180        Translation { translation 0 0 -0.5 }
181        Separator {
182          Cube {} # 0
183          USE NumericLabelTransform
184          AsciiText { string "0" }
185        }
186        Translation { translation 0 0 0.5 }
187      }
188      Translation { translation 2.5 0 0 }
189      SwitchboardOperator {
190        enable [ FALSE TRUE FALSE ]
191        key [ MINUS UNDEFINED MINUS ]
192        behavior [ HOLD NONE HOLD ]
193        Translation { translation 0 0 -0.5 }
194        Separator {
195          Cube {} # -
196          USE NumericLabelTransform
197          AsciiText { string "-" }
198        }
199        Translation { translation 0 0 0.5 }
200      }
201      Translation { translation 2.5 0 0 }
202      SwitchboardOperator {
203        enable [ FALSE TRUE FALSE ]
204        key [ EQUAL UNDEFINED EQUAL ]
205        behavior [ HOLD NONE HOLD ]
206        Translation { translation 0 0 -0.5 }
207        Separator {
208          Cube {} # =
209          USE NumericLabelTransform
210          AsciiText { string "=" }
211        }
212        Translation { translation 0 0 0.5 }
213      }
214      Translation { translation 3.5 0 0 }
215      Scale { scaleFactor 2 1 1 }
216      SwitchboardOperator {
217        enable [ FALSE TRUE FALSE ]
218        key [ BACKSPACE UNDEFINED BACKSPACE ]
219        behavior [ HOLD NONE HOLD ]
220        Translation { translation 0 0 -0.5 }
221        Separator {
222          Cube {} # BACKSPACE
223          USE NumericLabelTransform
224          AsciiText { string "<-" }
225        }
226        Translation { translation 0 0 0.5 }
227      }
228    }
229  }
230  Translation { translation 0 -2.5 0 }
231  Separator {
232    Group {
233      Translation { translation 0.5 0 0 }
234      Scale { scaleFactor 1.5 1 1 }
235      SwitchboardOperator {
236        enable [ FALSE TRUE FALSE ]
237        key [ TAB UNDEFINED TAB ]
238        behavior [ HOLD NONE HOLD ]
239        Translation { translation 0 0 -0.5 }
240        Separator {
241          Cube {} # TAB
242          DEF LabelTransform Group {
243            Translation { translation -0.7 -0.1 1 }
244            Scale { scaleFactor 0.1 0.1 0.1 }
245            BaseColor { rgb 0 0 0 }
246            PolygonOffset {
247              factor -1
248              on TRUE
249            }
250          }
251          AsciiText { string "->|" }
252        }
253        Translation { translation 0 0 0.5 }
254      }
255      Scale { scaleFactor 0.66 1 1 }
256      Translation { translation 3.0 0 0 }
257      SwitchboardOperator {
258        enable [ FALSE TRUE FALSE ]
259        key [ Q UNDEFINED Q ]
260        behavior [ HOLD NONE HOLD ]
261        Translation { translation 0 0 -0.5 }
262        Separator {
263          Cube {} # Q
264          USE LabelTransform
265          AsciiText { string "Q" }
266        }
267        Translation { translation 0 0 0.5 }
268      }
269      Translation { translation 2.5 0 0 }
270      SwitchboardOperator {
271        enable [ FALSE TRUE FALSE ]
272        key [ W UNDEFINED W ]
273        behavior [ HOLD NONE HOLD ]
274        Translation { translation 0 0 -0.5 }
275        Separator {
276          Cube {} # W
277          USE LabelTransform
278          AsciiText { string "W" }
279        }
280        Translation { translation 0 0 0.5 }
281      }
282      Translation { translation 2.5 0 0 }
283      SwitchboardOperator {
284        enable [ FALSE TRUE FALSE ]
285        key [ E UNDEFINED E ]
286        behavior [ HOLD NONE HOLD ]
287        Translation { translation 0 0 -0.5 }
288        Separator {
289          Cube {} # E
290          USE LabelTransform
291          AsciiText { string "E" }
292        }
293        Translation { translation 0 0 0.5 }
294      }
295      Translation { translation 2.5 0 0 }
296      SwitchboardOperator {
297        enable [ FALSE TRUE FALSE ]
298        key [ R UNDEFINED R ]
299        behavior [ HOLD NONE HOLD ]
300        Translation { translation 0 0 -0.5 }
301        Separator {
302          Cube {} # R
303          USE LabelTransform
304          AsciiText { string "R" }
305        }
306        Translation { translation 0 0 0.5 }
307      }
308      Translation { translation 2.5 0 0 }
309      SwitchboardOperator {
310        enable [ FALSE TRUE FALSE ]
311        key [ T UNDEFINED T ]
312        behavior [ HOLD NONE HOLD ]
313        Translation { translation 0 0 -0.5 }
314        Separator {
315          Cube {} # T
316          USE LabelTransform
317          AsciiText { string "T" }
318        }
319        Translation { translation 0 0 0.5 }
320      }
321      Translation { translation 2.5 0 0 }
322      SwitchboardOperator {
323        enable [ FALSE TRUE FALSE ]
324        key [ Y UNDEFINED Y ]
325        behavior [ HOLD NONE HOLD ]
326        Translation { translation 0 0 -0.5 }
327        Separator {
328          Cube {} # Y
329          USE LabelTransform
330          AsciiText { string "Y" }
331        }
332        Translation { translation 0 0 0.5 }
333      }
334      Translation { translation 2.5 0 0 }
335      SwitchboardOperator {
336        enable [ FALSE TRUE FALSE ]
337        key [ U UNDEFINED U ]
338        behavior [ HOLD NONE HOLD ]
339        Translation { translation 0 0 -0.5 }
340        Separator {
341          Cube {} # U
342          USE LabelTransform
343          AsciiText { string "U" }
344        }
345        Translation { translation 0 0 0.5 }
346      }
347      Translation { translation 2.5 0 0 }
348      SwitchboardOperator {
349        enable [ FALSE TRUE FALSE ]
350        key [ I UNDEFINED I ]
351        behavior [ HOLD NONE HOLD ]
352        Translation { translation 0 0 -0.5 }
353        Separator {
354          Cube {} # I
355          USE LabelTransform
356          AsciiText { string "I" }
357        }
358        Translation { translation 0 0 0.5 }
359      }
360      Translation { translation 2.5 0 0 }
361      SwitchboardOperator {
362        enable [ FALSE TRUE FALSE ]
363        key [ O UNDEFINED O ]
364        behavior [ HOLD NONE HOLD ]
365        Translation { translation 0 0 -0.5 }
366        Separator {
367          Cube {} # O
368          USE LabelTransform
369          AsciiText { string "O" }
370        }
371        Translation { translation 0 0 0.5 }
372      }
373      Translation { translation 2.5 0 0 }
374      SwitchboardOperator {
375        enable [ FALSE TRUE FALSE ]
376        key [ P UNDEFINED P ]
377        behavior [ HOLD NONE HOLD ]
378        Translation { translation 0 0 -0.5 }
379        Separator {
380          Cube {} # P
381          USE LabelTransform
382          AsciiText { string "P" }
383        }
384        Translation { translation 0 0 0.5 }
385      }
386      Translation { translation 2.5 0 0 }
387      SwitchboardOperator {
388        enable [ FALSE TRUE FALSE ]
389        key [ BRACKETLEFT UNDEFINED BRACKETLEFT ]
390        behavior [ HOLD NONE HOLD ]
391        Translation { translation 0 0 -0.5 }
392        Separator {
393          Cube {} # BRACKETLEFT
394          USE NumericLabelTransform
395          AsciiText { string "[" }
396        }
397        Translation { translation 0 0 0.5 }
398      }
399      Translation { translation 2.5 0 0 }
400      SwitchboardOperator {
401        enable [ FALSE TRUE FALSE ]
402        key [ BRACKETRIGHT UNDEFINED BRACKETRIGHT ]
403        behavior [ HOLD NONE HOLD ]
404        Translation { translation 0 0 -0.5 }
405        Separator {
406          Cube {} # BRACKETRIGHT
407          USE NumericLabelTransform
408          AsciiText { string "]" }
409        }
410        Translation { translation 0 0 0.5 }
411      }
412      Translation { translation 3.12 0 0 }
413      Scale { scaleFactor 1.66 1 1 }
414      SwitchboardOperator {
415        enable [ FALSE TRUE FALSE ]
416        key [ RETURN UNDEFINED RETURN ]
417        behavior [ HOLD NONE HOLD ]
418        Translation { translation 0 0 -0.5 }
419        Cube {} # RETURN
420        Translation { translation 0 0 0.5 }
421      }
422    }
423  }
424  Translation { translation 0 -2.5 0 }
425  Separator {
426    Group {
427      Translation { translation 1 0 0 }
428      Scale { scaleFactor 2 1 1 }
429      SwitchboardOperator {
430        enable [ FALSE TRUE FALSE ]
431        key [ CAPS_LOCK UNDEFINED CAPS_LOCK ]
432        behavior [ HOLD NONE HOLD ] # TOGGLE?
433        Translation { translation 0 0 -0.5 }
434        Separator {
435          Cube {} # CAPS_LOCK
436          USE LabelTransform
437          AsciiText { string "" }
438        }
439        Translation { translation 0 0 0.5 }
440      }
441      Scale { scaleFactor 0.5 1 1 }
442      Translation { translation 3.5 0 0 }
443      SwitchboardOperator {
444        enable [ FALSE TRUE FALSE ]
445        key [ A UNDEFINED A ]
446        behavior [ HOLD NONE HOLD ]
447        Translation { translation 0 0 -0.5 }
448        Separator {
449          Cube {} # A
450          USE LabelTransform
451          AsciiText { string "A" }
452        }
453        Translation { translation 0 0 0.5 }
454      }
455      Translation { translation 2.5 0 0 }
456      SwitchboardOperator {
457        enable [ FALSE TRUE FALSE ]
458        key [ S UNDEFINED S ]
459        behavior [ HOLD NONE HOLD ]
460        Translation { translation 0 0 -0.5 }
461        Separator {
462          Cube {} # S
463          USE LabelTransform
464          AsciiText { string "S" }
465        }
466        Translation { translation 0 0 0.5 }
467      }
468      Translation { translation 2.5 0 0 }
469      SwitchboardOperator {
470        enable [ FALSE TRUE FALSE ]
471        key [ D UNDEFINED D ]
472        behavior [ HOLD NONE HOLD ]
473        Translation { translation 0 0 -0.5 }
474        Separator {
475          Cube {} # D
476          USE LabelTransform
477          AsciiText { string "D" }
478        }
479        Translation { translation 0 0 0.5 }
480      }
481      Translation { translation 2.5 0 0 }
482      SwitchboardOperator {
483        enable [ FALSE TRUE FALSE ]
484        key [ F UNDEFINED F ]
485        behavior [ HOLD NONE HOLD ]
486        Translation { translation 0 0 -0.5 }
487        Separator {
488          Cube {} # F
489          USE LabelTransform
490          AsciiText { string "F" }
491        }
492        Translation { translation 0 0 0.5 }
493      }
494      Translation { translation 2.5 0 0 }
495      SwitchboardOperator {
496        enable [ FALSE TRUE FALSE ]
497        key [ G UNDEFINED G ]
498        behavior [ HOLD NONE HOLD ]
499        Translation { translation 0 0 -0.5 }
500        Separator {
501          Cube {} # G
502          USE LabelTransform
503          AsciiText { string "G" }
504        }
505        Translation { translation 0 0 0.5 }
506      }
507      Translation { translation 2.5 0 0 }
508      SwitchboardOperator {
509        enable [ FALSE TRUE FALSE ]
510        key [ H UNDEFINED H ]
511        behavior [ HOLD NONE HOLD ]
512        Translation { translation 0 0 -0.5 }
513        Separator {
514          Cube {} # H
515          USE LabelTransform
516          AsciiText { string "H" }
517        }
518        Translation { translation 0 0 0.5 }
519      }
520      Translation { translation 2.5 0 0 }
521      SwitchboardOperator {
522        enable [ FALSE TRUE FALSE ]
523        key [ J UNDEFINED J ]
524        behavior [ HOLD NONE HOLD ]
525        Translation { translation 0 0 -0.5 }
526        Separator {
527          Cube {} # J
528          USE LabelTransform
529          AsciiText { string "J" }
530        }
531        Translation { translation 0 0 0.5 }
532      }
533      Translation { translation 2.5 0 0 }
534      SwitchboardOperator {
535        enable [ FALSE TRUE FALSE ]
536        key [ K UNDEFINED K ]
537        behavior [ HOLD NONE HOLD ]
538        Translation { translation 0 0 -0.5 }
539        Separator {
540          Cube {} # K
541          USE LabelTransform
542          AsciiText { string "K" }
543        }
544        Translation { translation 0 0 0.5 }
545      }
546      Translation { translation 2.5 0 0 }
547      SwitchboardOperator {
548        enable [ FALSE TRUE FALSE ]
549        key [ L UNDEFINED L ]
550        behavior [ HOLD NONE HOLD ]
551        Translation { translation 0 0 -0.5 }
552        Separator {
553          Cube {} # L
554          USE LabelTransform
555          AsciiText { string "L" }
556        }
557        Translation { translation 0 0 0.5 }
558      }
559      Translation { translation 2.5 0 0 }
560      SwitchboardOperator {
561        enable [ FALSE TRUE FALSE ]
562        key [ SEMICOLON UNDEFINED SEMICOLON ]
563        behavior [ HOLD NONE HOLD ]
564        Translation { translation 0 0 -0.5 }
565        Separator {
566          Cube {} # SEMICOLON
567          USE NumericLabelTransform
568          AsciiText { string ";" }
569        }
570        Translation { translation 0 0 0.5 }
571      }
572      Translation { translation 2.5 0 0 }
573      SwitchboardOperator {
574        enable [ FALSE TRUE FALSE ]
575        key [ APOSTROPHE UNDEFINED APOSTROPHE ]
576        behavior [ HOLD NONE HOLD ]
577        Translation { translation 0 0 -0.5 }
578        Separator {
579          Cube {} # APOSTROPHE
580          USE NumericLabelTransform
581          AsciiText { string "'" }
582        }
583        Translation { translation 0 0 0.5 }
584      }
585      Translation { translation 2.5 0 0 }
586      SwitchboardOperator {
587        enable [ FALSE TRUE FALSE ]
588        key [ BACKSLASH UNDEFINED BACKSLASH ]
589        behavior [ TOGGLE NONE TOGGLE ]
590        Translation { translation 0 0 -0.5 }
591        Separator {
592          Cube {} # BACKSLASH
593          Translation { translation 0.5 0 0 }
594          USE NumericLabelTransform
595          Scale { scaleFactor -1 1 1 }
596          AsciiText { string "/" }
597        }
598        Translation { translation 0 0 0.5 }
599      }
600      Translation { translation 2.5 0.5 0 }
601      Scale { scaleFactor 0.96 1.5 1 }
602      SwitchboardOperator {
603        enable [ FALSE TRUE FALSE ]
604        key [ RETURN UNDEFINED RETURN ]
605        behavior [ HOLD NONE HOLD ]
606        Translation { translation 0 0 -0.5 }
607        Separator {
608          Cube {} # RETURN
609          USE LabelTransform
610          AsciiText { string "<-" }
611        }
612        Translation { translation 0 0 0.5 }
613      }
614    }
615  }
616  Translation { translation 0 -2.5 0 }
617  Separator {
618    Group {
619      Translation { translation 1.5 0 0 }
620      Scale { scaleFactor 2.5 1 1 }
621      SwitchboardOperator {
622        enable [ FALSE TRUE FALSE ]
623        key [ LEFT_SHIFT UNDEFINED LEFT_SHIFT ]
624        behavior [ HOLD NONE HOLD ]
625        Translation { translation 0 0 -0.5 }
626        Cube {} # LEFT_SHIFT
627        Translation { translation 0 0 0.5 }
628      }
629      Scale { scaleFactor 0.4 1 1 }
630      Translation { translation 4 0 0 }
631      SwitchboardOperator {
632        enable [ FALSE TRUE FALSE ]
633        key [ Z UNDEFINED Z ]
634        behavior [ HOLD NONE HOLD ]
635        Translation { translation 0 0 -0.5 }
636        Separator {
637          Cube {} # Z
638          USE LabelTransform
639          AsciiText { string "Z" }
640        }
641        Translation { translation 0 0 0.5 }
642      }
643      Translation { translation 2.5 0 0 }
644      SwitchboardOperator {
645        enable [ FALSE TRUE FALSE ]
646        key [ X UNDEFINED X ]
647        behavior [ HOLD NONE HOLD ]
648        Translation { translation 0 0 -0.5 }
649        Separator {
650          Cube {} # X
651          USE LabelTransform
652          AsciiText { string "X" }
653        }
654        Translation { translation 0 0 0.5 }
655      }
656      Translation { translation 2.5 0 0 }
657      SwitchboardOperator {
658        enable [ FALSE TRUE FALSE ]
659        key [ C UNDEFINED C ]
660        behavior [ HOLD NONE HOLD ]
661        Translation { translation 0 0 -0.5 }
662        Separator {
663          Cube {} # C
664          USE LabelTransform
665          AsciiText { string "C" }
666        }
667        Translation { translation 0 0 0.5 }
668      }
669      Translation { translation 2.5 0 0 }
670      SwitchboardOperator {
671        enable [ FALSE TRUE FALSE ]
672        key [ V UNDEFINED V ]
673        behavior [ HOLD NONE HOLD ]
674        Translation { translation 0 0 -0.5 }
675        Separator {
676          Cube {} # V
677          USE LabelTransform
678          AsciiText { string "V" }
679        }
680        Translation { translation 0 0 0.5 }
681      }
682      Translation { translation 2.5 0 0 }
683      SwitchboardOperator {
684        enable [ FALSE TRUE FALSE ]
685        key [ B UNDEFINED B ]
686        behavior [ HOLD NONE HOLD ]
687        Translation { translation 0 0 -0.5 }
688        Separator {
689          Cube {} # B
690          USE LabelTransform
691          AsciiText { string "B" }
692        }
693        Translation { translation 0 0 0.5 }
694      }
695      Translation { translation 2.5 0 0 }
696      SwitchboardOperator {
697        enable [ FALSE TRUE FALSE ]
698        key [ N UNDEFINED N ]
699        behavior [ HOLD NONE HOLD ]
700        Translation { translation 0 0 -0.5 }
701        Separator {
702          Cube {} # N
703          USE LabelTransform
704          AsciiText { string "N" }
705        }
706        Translation { translation 0 0 0.5 }
707      }
708      Translation { translation 2.5 0 0 }
709      SwitchboardOperator {
710        enable [ FALSE TRUE FALSE ]
711        key [ M UNDEFINED M ]
712        behavior [ HOLD NONE HOLD ]
713        Translation { translation 0 0 -0.5 }
714        Separator {
715          Cube {} # M
716          USE LabelTransform
717          AsciiText { string "M" }
718        }
719        Translation { translation 0 0 0.5 }
720      }
721      Translation { translation 2.5 0 0 }
722      SwitchboardOperator {
723        enable [ FALSE TRUE FALSE ]
724        key [ COMMA UNDEFINED COMMA ]
725        behavior [ HOLD NONE HOLD ]
726        Translation { translation 0 0 -0.5 }
727        Separator {
728          Cube {} # COMMA
729          USE NumericLabelTransform
730          AsciiText { string "," }
731        }
732        Translation { translation 0 0 0.5 }
733      }
734      Translation { translation 2.5 0 0 }
735      SwitchboardOperator {
736        enable [ FALSE TRUE FALSE ]
737        key [ PERIOD UNDEFINED PERIOD ]
738        behavior [ HOLD NONE HOLD ]
739        Translation { translation 0 0 -0.5 }
740        Separator {
741          Cube {} # PERIOD
742          USE NumericLabelTransform
743          AsciiText { string "." }
744        }
745        Translation { translation 0 0 0.5 }
746      }
747      Translation { translation 2.5 0 0 }
748      SwitchboardOperator {
749        enable [ FALSE TRUE FALSE ]
750        key [ SLASH UNDEFINED SLASH ]
751        behavior [ HOLD NONE HOLD ]
752        Translation { translation 0 0 -0.5 }
753        Separator {
754          Cube {} # SLASH
755          USE NumericLabelTransform
756          AsciiText { string "/" }
757        }
758        Translation { translation 0 0 0.5 }
759      }
760      Translation { translation 4.5 0 0 }
761      Scale { scaleFactor 3 1 1 }
762      SwitchboardOperator {
763        enable [ FALSE TRUE FALSE ]
764        key [ LEFT_SHIFT UNDEFINED LEFT_SHIFT ]
765        behavior [ HOLD NONE HOLD ]
766        Translation { translation 0 0 -0.5 }
767        Cube {} # RIGHT_SHIFT
768        Translation { translation 0 0 0.5 }
769      }
770    }
771  }
772  Translation { translation 0 -2.5 0 }
773  Separator {
774    Group {
775      Separator {
776        Translation { translation 1 0 0 }
777        Scale { scaleFactor 2 1 1 }
778        SwitchboardOperator {
779          enable [ FALSE ]
780          key [ LEFT_CONTROL ]
781          behavior [ HOLD ]
782          Translation { translation 0 0 -0.5 }
783        }
784        Cube {} # CONTROL
785      }
786      Separator {
787        Translation { translation 6.75 0 0 }
788        Scale { scaleFactor 2 1 1 }
789        SwitchboardOperator {
790          enable [ FALSE ]
791          key [ LEFT_ALT ]
792          behavior [ HOLD ]
793          Translation { translation 0 0 -0.5 }
794        }
795        Cube {} # ALT
796      }
797      Separator {
798        Translation { translation 17.25 0 0 }
799        Scale { scaleFactor 8 1 1 }
800        SwitchboardOperator {
801          enable [ FALSE ]
802          key [ SPACE ]
803          behavior [ HOLD ]
804          Translation { translation 0 0 -0.5 }
805        }
806        Cube {} # SPACE
807      }
808      Separator {
809        Translation { translation 27.75 0 0 }
810        Scale { scaleFactor 2 1 1 }
811        SwitchboardOperator {
812          enable [ FALSE ]
813          key [ LEFT_ALT ]
814          behavior [ HOLD ]
815          Translation { translation 0 0 -0.5 }
816        }
817        Cube {} # alt
818      }
819      Separator {
820        Translation { translation 33.5 0 0 }
821        Scale { scaleFactor 2 1 1 }
822        SwitchboardOperator {
823          enable [ FALSE ]
824          key [ LEFT_CONTROL ]
825          behavior [ HOLD ]
826          Translation { translation 0 0 -0.5 }
827        }
828        Cube {} # ctrl
829      }
830    }
831  }
832 }
833 Separator {
834  DirectionalLight { direction 0.5 0.5 1 }
835  OrthographicCamera {}
836  Separator {
837    BaseColor { rgb 1 1 0 }
838    Translation { translation -1.2 -0.5 0 }
839    Scale { scaleFactor 0.006 0.006 0.006 }
840    AsciiText {
841      string [
842        "granted, it is wobbly"
843        "the keys are worn and sticky"
844        "but for a mere bubbly"
845        "you really can't be picky"
846        ""
847        "[ESC, then 'Q' to quit]"
848      ]
849    }
850  }
851 }
852}
853