Group {
    children [
		Group {
			children [
				DEF T1 Group {
					children [
						Shape {
							appearance {
								texture DEF FIRST_MOVIE MovieTexture {
									url 32
								}
							}
						}
						Shape {
							appearance {
								material Material2D {
									emissiveColor 0.1 0.22 0.33
								}
							}
							geometry DEF MY_CIRCLE Circle {
								radius 100.0
							}
						}
						DEF TIS TimeSensor {
							loop TRUE
						}
						DEF TOS TouchSensor
						DEF POI PositionInterpolator2D {
							key [0.0 0.5 1.0]
							keyValue [100.0 100.0, 200.0 100.0, 100.0 100.0]
						}
					]
				}
				Group {
					children Shape {
						appearance {
							material DEF MAT Material2D {
								emissiveColor 0.0 0.8 0.0
							}
						}
					}
				}
				Group {
					children [
						Shape {
							appearance {
								texture DEF MyMovie MovieTexture {
									url 32
								}
							}
						}
						Transform2D {
							children [
								Sound2D {
									source DEF MyAudio AudioSource {
										url 33
										//startTime -1
									}
								}
							]
						}
					]
				}
				Group {
					children [
						USE MyMovie
						Shape {
							geometry DEF TEXTNODE Text {
								string abcd
								length -4
							}
							appearance {
								material Material2D {
									emissiveColor 0.8 0.8 0.8
								}
							}
						}
						DEF TIS2 TimeSensor {
							cycleInterval 2		
						}
						DEF COI ColorInterpolator {
							key [0.0 0.5 1.0]
							keyValue [0.0 0.8 0.0, 0.8 0.0 0.0, 0.0 0.8 0.0]
						}
					]
				}			
			]
		}
		DEF COND Conditional {		// this is the format for Conditional
			buffer REPLACE MY_CIRCLE.radius BY 747.737
		}
	]
}

ROUTE TOS.touchTime TO TIS.startTime
ROUTE DEF ROUTE2 TIS.fraction_changed TO POI.set_fraction
ROUTE TIS.fraction_changed TO COI.set_fraction
ROUTE COI.value_changed TO MAT.emissiveColor

UPDATE IPMPD {
	IPMP_DescriptorID		69
	URLString				"IPMP is here and barking"
}
UPDATE OD [
	{
		objectDescriptorID	32
		muxScript IPMPDescriptor-add-update-remove.scr
	}
	{
		objectDescriptorID	33
		muxScript IPMPDescriptor-add-update-remove.scr
	}
]

AT 50 {
	REPLACE COND.activate BY TRUE		# activating a Conditional
	REPLACE TEXTNODE.string BY 123
}

//AT 1300 {
//	REPLACE FIRST_MOVIE.stopTime BY 0
//}

AT 1500 UPDATE IPMPD {
	IPMP_DescriptorID		69
	URLString				"IPMP is here and biting"
}

AT 2000 REMOVE IPMPD 69

AT 2600 {
	REPLACE MY_CIRCLE.radius BY 888.777
	REPLACE MyMovie.stopTime BY 0
}

AT 2600 {
	REMOVE OD 33
}
