original attribution already in README
keep private functions at the end of file
drop useless intermediate variable
better variable name
use getFirstMatch() function
more consistent syntax
add VMID element in HARDWARE