rewriting domainbus project