# Update an object remotely, detect conflict, and bless the local version.
# The format is: <cmd>|<objid>|<version>|<parent1>|<parent2>|<logrec>|<txid>|<txcount>|<deleted>

addr|1234|4|1||VeyronPhone:10:1:0|0|1|false
linkr|1234|4|3||VeyronPhone:10:1:1
