{
    if ($pxe{status} eq "enabled")
    {
	my $pxeclients = esmith::ConfigDB->open('thinclient');
	my @pxedists = $pxeclients->get_all_by_prop('type' => 'dist');
	$OUT .= "\n    # Individually managed workstations defined by smeserver-thinclient\n\n";
	foreach my $distrec (@pxedists)
	{
	    my $dist = $distrec->key;
	    my $dir = $pxeclients->get_prop($dist, 'dir');
	    my $dprog = $pxeclients->get_prop($dist, 'prog');
	    my @macs = $pxeclients->get_all_by_prop('base', $dist);
	    if (@macs)
	    {
		$OUT .= "    group { # clients for $dist Distribution\n";
		$OUT .= "        allow bootp;\n";
		my $seq = 0;
		while (my ($arch, $aprog) = each (%pxe))
    		{
		    unless ($arch eq 'default' || $arch eq 'type' || $arch eq 'status' || $arch eq 'nextserver' || $arch eq 'dir')
		    {
			my $prog = $pxeclients->get_prop($dist, $arch); 
			if ($prog)
			{
			    ++$seq;
			    if ($seq eq 1)
			    {
	        		$OUT .= "        if option client-architecture = $arch {\n";
	        		$OUT .= "            filename \"$dir/$prog\";\n";
	        		$OUT .= "        }\n";
	    		    }
	    		    else
	    		    {
	        		$OUT .= "        elsif option client-architecture = $arch {\n";
	        		$OUT .= "            filename \"$dir/$prog\";\n";
	        		$OUT .= "        }\n";
	    		    }
	    		}
		    }
		}
		if ($seq eq 0)
		{
		    $OUT .= "        filename \"$dir/$dprog\";\n";
		}
		else
		{
		    $OUT .= "        else {\n";
		    $OUT .= "            filename \"$dir/$dprog\";\n";
		    $OUT .= "        }\n";
		}
		foreach my $client (@macs)
		{
		    if ($client->prop('status') eq 'enabled')
		    {
			my $host = $client->prop('name') || $client->key;
			$host =~ s/://g;
			$OUT .= "        host $host {\n";
			$OUT .= "	    hardware ethernet ".$client->key.";\n";
			$OUT .= "	}\n";
		    }
		}
		$OUT .= "    }\n";
	    }
	}
    }
}
