use `implicit class` instead?