<runtime ram="16M" caps="512" binary="init">

	<requires>
		<nitpicker/>
		<report/>
	</requires>

	<provides> <nitpicker/> <rom/> <report/> </provides>

	<content>
		<rom label="init"/>
		<rom label="report_rom"/>
		<rom label="wm"/>
	</content>

	<config>
			<parent-provides>
				<service name="ROM"/>
				<service name="PD"/>
				<service name="CPU"/>
				<service name="LOG"/>
				<service name="Nitpicker"/>
				<service name="Timer"/>
				<service name="Report"/>
			</parent-provides>

			<default-route>
				<any-service> <parent/> <any-child/> </any-service>
			</default-route>

			<default caps="100"/>

			<service name="Nitpicker">
				<default-policy> <child name="wm"/> </default-policy>
			</service>

			<service name="ROM">
				<policy label_suffix="layouter -> window_list">
					<child name="report_rom" label="layouter -> window_list"/> </policy>
				<policy label_suffix="layouter -> focus_request">
					<child name="report_rom" label="layouter -> focus_request"/> </policy>
				<policy label_suffix="layouter -> hover">
					<child name="report_rom" label="layouter -> hover"/> </policy>
				<policy label_suffix="layouter -> decorator_margins">
					<child name="report_rom" label="layouter -> decorator_margins"/> </policy>
				<policy label_suffix="layouter -> rules">
					<child name="report_rom" label="layouter -> rules"/> </policy>
				<policy label_suffix="decorator -> window_layout">
					<child name="report_rom" label="decorator -> window_layout"/> </policy>
				<policy label_suffix="decorator -> pointer">
					<child name="report_rom" label="decorator -> pointer"/> </policy>
			</service>

			<service name="Report">
				<policy label_suffix="layouter -> window_layout">
					<child name="report_rom" label="layouter -> window_layout"/> </policy>
				<policy label_suffix="layouter -> resize_request">
					<child name="report_rom" label="layouter -> resize_request"/> </policy>
				<policy label_suffix="layouter -> focus">
					<child name="report_rom" label="layouter -> focus"/> </policy>
				<policy label_suffix="layouter -> rules">
					<child name="report_rom" label="layouter -> rules"/> </policy>
				<policy label_suffix="decorator -> hover">
					<child name="report_rom" label="decorator -> hover"/> </policy>
				<policy label_suffix="decorator -> decorator_margins">
					<child name="report_rom" label="decorator -> decorator_margins"/> </policy>
				<policy label_suffix="-> shape"> <child name="wm"/> </policy>
			</service>

			<start name="report_rom">
				<resource name="RAM" quantum="4M"/>
				<provides>
					<service name="Report"/>
					<service name="ROM"/>
				</provides>
				<config>
					<policy label="layouter -> window_list"       report="wm -> window_list"/>
					<policy label="layouter -> focus_request"     report="wm -> focus_request"/>
					<policy label="layouter -> hover"             report="decorator -> hover"/>
					<policy label="layouter -> decorator_margins" report="decorator -> decorator_margins"/>
					<policy label="layouter -> rules"             report="layouter -> rules"/>
					<policy label="decorator -> window_layout"    report="layouter -> window_layout"/>
					<policy label="decorator -> pointer"          report="wm -> pointer"/>
					<policy label="wm -> resize_request"          report="layouter -> resize_request"/>
					<policy label="wm -> focus"                   report="layouter -> focus"/>
				</config>
			</start>

			<start name="wm" caps="250">
				<resource name="RAM" quantum="8M"/>
				<provides>
					<service name="Nitpicker"/> <service name="Report"/>
				</provides>
				<config>
					<policy label_suffix="decorator -> " role="decorator"/>
					<policy label_suffix="layouter -> "  role="layouter"/>
					<default-policy/>
				</config>
				<route>
					<service name="ROM" label="resize_request"> <child name="report_rom"/> </service>
					<service name="ROM" label="focus">          <child name="report_rom"/> </service>
					<service name="Report" label_last="shape">  <parent/> </service>
					<service name="Report">                     <child name="report_rom"/> </service>
					<service name="Nitpicker" label=""> <parent label="focus"/> </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>
	</config>

</runtime>
