handle hardware a bit better