// Scripts
	$actionScriptId = IPS_GetScriptIDByName('NetPlayer_ActionScript',  $CategoryIdApp);
	$eventScriptId  = IPS_GetScriptIDByName('NetPlayer_EventScript',   $CategoryIdApp);

	// Controls
	CreateProfile_Associations ('NetPlayer_Category',    array('Root'));
	CreateProfile_Associations ('NetPlayer_CDAlbumList', array('...'));
	CreateProfile_Associations ('NetPlayer_CDAlbumNav',  array('<<','>>'));
	CreateProfile_Associations ('NetPlayer_CDTrackList', array('...'));
	CreateProfile_Associations ('NetPlayer_CDTrackList2', array('xx', 'yyy'));
	CreateProfile_Associations ('NetPlayer_CDTrackNav',  array('<<','>>'));
	CreateProfile_Associations ('NetPlayer_RadioList',   array('...'));
	CreateProfile_Associations ('NetPlayer_RadioNav',    array('<<','>>'));
	CreateProfile_Associations ('NetPlayer_Control',     array('Play','Pause','Stop','<<','>>'));
	CreateProfile_Associations ('NetPlayer_Source',      array('CD Player','Radio Player'));

	// MP3 Player
	$mp3PlayerInstanceId     = CreateInstance("CDPlayer", $CategoryIdData, "{485D0419-BE97-4548-AA9C-C083EB82E61E}",1000);
	$categoryId       = CreateVariable("Category",        1 /*Integer*/,  $CategoryIdData, 150 , 'NetPlayer_Category', $actionScriptId, 0);
	$cdCategoryNameId = CreateVariable("CategoryName",    3 /*String*/,  $mp3PlayerInstanceId, 10 , '~TextBox', null/*NoAS*/, "");
	$cdIdxId          = CreateVariable("DirectoryIdx",    1 /*Integer*/, $mp3PlayerInstanceId, 20 , '',         null/*NoAS*/,  0);
	$cddirectoryPath  = CreateVariable("DirectoryPath",   3 /*String*/,  $mp3PlayerInstanceId, 30 , '~TextBox');
	$cddirectoryName  = CreateVariable("DirectoryName",   3 /*String*/,  $mp3PlayerInstanceId, 40 , '~TextBox');
	$cdTrackListHtmlId= CreateVariable("TrackListHtml",   3 /*String*/,  $mp3PlayerInstanceId, 50 , '~HTMLBox');
	$cdTrackIdxId     = CreateVariable("TrackIdx",        1 /*Integer*/, $mp3PlayerInstanceId, 60 , '',         null/*NoAS*/, 0);

	// WebRadio
	$webRadioInstanceId     = CreateInstance("RadioPlayer", $CategoryIdData, "{485D0419-BE97-4548-AA9C-C083EB82E61E}",1010);
	$radioNameId     = CreateVariable("Name", 3 /*String*/,   $webRadioInstanceId, 10 , '~TextBox');
	$radioUrlId      = CreateVariable("Url",  3 /*String*/,   $webRadioInstanceId, 20 , '~TextBox');
   $ScriptIdAutomaticOff    = IPS_GetScriptIDByName('IPSWatering_AutomaticOff',    $CategoryIdApp);

	// Create Circles and Controls
	// ----------------------------------------------------------------------------------------------------------------------------
	CreateProfile_Associations ('IPSWatering_Program', array(
												c_ProgramId_Manual	 	=> c_Program_Manual,
												c_ProgramId_EveryDay 	=> c_Program_EveryDay,
												c_ProgramId_Every2Day 	=> c_Program_Every2Day,
												c_ProgramId_Every3Day 	=> c_Program_Every3Day,
												c_ProgramId_MonWedFri 	=> c_Program_MonWedFri,
												c_ProgramId_MonTur 		=> c_Program_MonTur,
												c_ProgramId_Sunday 		=> c_Program_Sunday));
	CreateProfile_Associations ('IPSWatering_Sensor', array(
												0	=> 'Aus',
												1 	=> '1 mm',
												2 	=> '2 mm',
												3 	=> '3 mm',
												4 	=> '4 mm',
												5 	=> '5 mm'));
	CreateProfile_Duration ('IPSWatering_Duration', 5, 5, 120);
	CreateProfile_Switch ('IPSWatering_Active', 'Regner Aus', 'Regner An', '', 0x606060);

	$CategoryIdCircles	= CreateCategory('WaterCircles', $CategoryIdData, 20);
	$WaterConfig         = get_WateringConfiguration();
	$Idx                 = 10;
	foreach ($WaterConfig as $CircleName=>$CircleData) {
		$CircleId              = CreateCategory($CircleName, $CategoryIdCircles, $Idx);
		$ControlIdActive       = CreateVariable(c_Control_Active,       0 /*Boolean*/, $CircleId,  10, 'IPSWatering_Active',   $ScriptIdChangeSettings, false, 'Drops');
		$ControlIdAutomatic    = CreateVariable(c_Control_Automatic,    0 /*Boolean*/, $CircleId,  20, '~Switch',              $ScriptIdChangeSettings, false, 'Power');
		$ControlIdStartTime    = CreateVariable(c_Control_StartTime,    3 /*String*/,  $CircleId,  30, '~String',              $ScriptIdChangeSettings, '07:00', 'Clock');
		$ControlIdDuration     = CreateVariable(c_Control_Duration,     1 /*Integer*/, $CircleId,  40, 'IPSWatering_Duration', $ScriptIdChangeSettings, 45, 'Intensity');