update logic in caller magic :)