probably invalid, but at least hal builds