Updated for easier personal use