My implementation of Dan Ryan's hal for my use.