In reply to voraravi:
You are calling the task put() from a function. This is a violation of the LRM.