update puck
added error handle