changes S4::put() signature