Fixes based on my own comments
Simplify by taking *args