| section share parents toolkit |
| [Person] |
| Time == | ||
| Share | ||||
| key : | ||||
| last_used : Time | ||||
| State | ||||
| bearer : Share | ||||
| location : Person | ||||
| instigator : Person | ||
| InitState | ||||
| bearer' = {( | ||||
| location' = instigator | ||||
| IssueShare | ||||
| new_punter? : Person | ||||
| bearer' = bearer | ||||
| location' = location | ||||
| AcquireShare | ||||
| punters? : | ||||
| TransferShare | ||||
| vendor?, purchaser? : Person | ||||
| share? : Share | ||||
| (share?,vendor?) | ||||
| bearer' = bearer | ||||
| location' = if location = vendor? then purchaser? else location | ||||