refactor: made Arguments immutable, removed implicit usage showing and widened parameter type
refactor: remove redundant code