All code is provided as-is; no warranty is implied. By using this code you agree to not hold the author responsible for any damage to disks, drives, computers, or your mind, whether due to bugs in the code, frustration, or any other reason. While you are welcome to make suggestions or report bugs, this code is not supported and therefore I do not promise any help, updates, or bug fixes. You may use this code freely, with no copyright notice (though you’re welcome to give a friendly mention). You may change this code, provided you do not associate any changes made with the original code or me.