oh wait 2.0 introduced double-splat on hash param