use `.valueOf` instead of `.toString.call`