added put and delete methods