stellar-base 0.19.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +9 -6
  3. data/CHANGELOG.md +17 -2
  4. data/examples/allow_trust.rb +51 -0
  5. data/generated/stellar-base-generated.rb +14 -4
  6. data/generated/stellar/allow_trust_op.rb +2 -2
  7. data/generated/stellar/allow_trust_op/asset.rb +4 -4
  8. data/generated/stellar/asset.rb +2 -2
  9. data/generated/stellar/asset/alpha_num12.rb +2 -2
  10. data/generated/stellar/asset/alpha_num4.rb +2 -2
  11. data/generated/stellar/bucket_entry.rb +6 -0
  12. data/generated/stellar/bucket_entry_type.rb +8 -2
  13. data/generated/stellar/bucket_metadata.rb +32 -0
  14. data/generated/stellar/bucket_metadata/ext.rb +24 -0
  15. data/generated/stellar/change_trust_result_code.rb +1 -1
  16. data/generated/stellar/claim_offer_atom.rb +2 -2
  17. data/generated/stellar/{create_passive_offer_op.rb → create_passive_sell_offer_op.rb} +2 -2
  18. data/generated/stellar/envelope_type.rb +6 -4
  19. data/generated/stellar/ledger_close_value_signature.rb +20 -0
  20. data/generated/stellar/ledger_key.rb +1 -1
  21. data/generated/stellar/ledger_key/offer.rb +2 -2
  22. data/generated/stellar/manage_buy_offer_op.rb +29 -0
  23. data/generated/stellar/{manage_offer_result.rb → manage_buy_offer_result.rb} +5 -5
  24. data/generated/stellar/manage_buy_offer_result_code.rb +50 -0
  25. data/generated/stellar/{manage_offer_op.rb → manage_sell_offer_op.rb} +4 -4
  26. data/generated/stellar/manage_sell_offer_result.rb +26 -0
  27. data/generated/stellar/manage_sell_offer_result_code.rb +50 -0
  28. data/generated/stellar/offer_entry.rb +2 -2
  29. data/generated/stellar/operation.rb +6 -4
  30. data/generated/stellar/operation/body.rb +30 -26
  31. data/generated/stellar/operation_result.rb +6 -4
  32. data/generated/stellar/operation_result/tr.rb +32 -28
  33. data/generated/stellar/operation_result_code.rb +9 -5
  34. data/generated/stellar/operation_type.rb +17 -15
  35. data/generated/stellar/signer.rb +1 -1
  36. data/generated/stellar/stellar_value.rb +7 -5
  37. data/generated/stellar/stellar_value/ext.rb +8 -4
  38. data/generated/stellar/stellar_value_type.rb +22 -0
  39. data/generated/stellar/time_bounds.rb +4 -4
  40. data/generated/stellar/transaction.rb +2 -2
  41. data/generated/stellar/transaction_meta_v1.rb +1 -1
  42. data/lib/stellar-base.rb +2 -0
  43. data/lib/stellar/base/compat.rb +22 -0
  44. data/lib/stellar/base/version.rb +1 -1
  45. data/lib/stellar/operation.rb +27 -7
  46. data/lib/stellar/transaction.rb +12 -6
  47. data/spec/lib/stellar/price_spec.rb +3 -3
  48. data/tasks/xdr.rake +34 -39
  49. data/xdr/Stellar-ledger-entries.x +13 -6
  50. data/xdr/Stellar-ledger.x +45 -10
  51. data/xdr/Stellar-transaction.x +103 -46
  52. metadata +16 -7
  53. data/generated/stellar/manage_offer_result_code.rb +0 -50
@@ -12,8 +12,15 @@ typedef opaque Thresholds[4];
12
12
  typedef string string32<32>;
13
13
  typedef string string64<64>;
14
14
  typedef int64 SequenceNumber;
15
+ typedef uint64 TimePoint;
15
16
  typedef opaque DataValue<64>;
16
17
 
18
+ // 1-4 alphanumeric characters right-padded with 0 bytes
19
+ typedef opaque AssetCode4[4];
20
+
21
+ // 5-12 alphanumeric characters right-padded with 0 bytes
22
+ typedef opaque AssetCode12[12];
23
+
17
24
  enum AssetType
18
25
  {
19
26
  ASSET_TYPE_NATIVE = 0,
@@ -29,14 +36,14 @@ case ASSET_TYPE_NATIVE: // Not credit
29
36
  case ASSET_TYPE_CREDIT_ALPHANUM4:
30
37
  struct
31
38
  {
32
- opaque assetCode[4]; // 1 to 4 characters
39
+ AssetCode4 assetCode;
33
40
  AccountID issuer;
34
41
  } alphaNum4;
35
42
 
36
43
  case ASSET_TYPE_CREDIT_ALPHANUM12:
37
44
  struct
38
45
  {
39
- opaque assetCode[12]; // 5 to 12 characters
46
+ AssetCode12 assetCode;
40
47
  AccountID issuer;
41
48
  } alphaNum12;
42
49
 
@@ -77,7 +84,7 @@ enum LedgerEntryType
77
84
  struct Signer
78
85
  {
79
86
  SignerKey key;
80
- uint32 weight; // really only need 1byte
87
+ uint32 weight; // really only need 1 byte
81
88
  };
82
89
 
83
90
  enum AccountFlags
@@ -105,7 +112,6 @@ const MASK_ACCOUNT_FLAGS = 0x7;
105
112
  Other ledger entries created require an account.
106
113
 
107
114
  */
108
-
109
115
  struct AccountEntry
110
116
  {
111
117
  AccountID accountID; // master public key for this account
@@ -210,7 +216,7 @@ const MASK_OFFERENTRY_FLAGS = 1;
210
216
  struct OfferEntry
211
217
  {
212
218
  AccountID sellerID;
213
- uint64 offerID;
219
+ int64 offerID;
214
220
  Asset selling; // A
215
221
  Asset buying; // B
216
222
  int64 amount; // amount of A
@@ -283,6 +289,7 @@ enum EnvelopeType
283
289
  {
284
290
  ENVELOPE_TYPE_SCP = 1,
285
291
  ENVELOPE_TYPE_TX = 2,
286
- ENVELOPE_TYPE_AUTH = 3
292
+ ENVELOPE_TYPE_AUTH = 3,
293
+ ENVELOPE_TYPE_SCPVALUE = 4
287
294
  };
288
295
  }
@@ -10,12 +10,24 @@ namespace stellar
10
10
 
11
11
  typedef opaque UpgradeType<128>;
12
12
 
13
+ enum StellarValueType
14
+ {
15
+ STELLAR_VALUE_BASIC = 0,
16
+ STELLAR_VALUE_SIGNED = 1
17
+ };
18
+
19
+ struct LedgerCloseValueSignature
20
+ {
21
+ NodeID nodeID; // which node introduced the value
22
+ Signature signature; // nodeID's signature
23
+ };
24
+
13
25
  /* StellarValue is the value used by SCP to reach consensus on a given ledger
14
- */
26
+ */
15
27
  struct StellarValue
16
28
  {
17
- Hash txSetHash; // transaction set to apply to previous ledger
18
- uint64 closeTime; // network close time
29
+ Hash txSetHash; // transaction set to apply to previous ledger
30
+ TimePoint closeTime; // network close time
19
31
 
20
32
  // upgrades to apply to the previous ledger (usually empty)
21
33
  // this is a vector of encoded 'LedgerUpgrade' so that nodes can drop
@@ -25,17 +37,19 @@ struct StellarValue
25
37
  UpgradeType upgrades<6>;
26
38
 
27
39
  // reserved for future use
28
- union switch (int v)
40
+ union switch (StellarValueType v)
29
41
  {
30
- case 0:
42
+ case STELLAR_VALUE_BASIC:
31
43
  void;
44
+ case STELLAR_VALUE_SIGNED:
45
+ LedgerCloseValueSignature lcValueSignature;
32
46
  }
33
47
  ext;
34
48
  };
35
49
 
36
50
  /* The LedgerHeader is the highest level structure representing the
37
51
  * state of a ledger, cryptographically linked to previous ledgers.
38
- */
52
+ */
39
53
  struct LedgerHeader
40
54
  {
41
55
  uint32 ledgerVersion; // the protocol version of the ledger
@@ -120,7 +134,7 @@ case OFFER:
120
134
  struct
121
135
  {
122
136
  AccountID sellerID;
123
- uint64 offerID;
137
+ int64 offerID;
124
138
  } offer;
125
139
 
126
140
  case DATA:
@@ -133,17 +147,38 @@ case DATA:
133
147
 
134
148
  enum BucketEntryType
135
149
  {
136
- LIVEENTRY = 0,
137
- DEADENTRY = 1
150
+ METAENTRY =
151
+ -1, // At-and-after protocol 11: bucket metadata, should come first.
152
+ LIVEENTRY = 0, // Before protocol 11: created-or-updated;
153
+ // At-and-after protocol 11: only updated.
154
+ DEADENTRY = 1,
155
+ INITENTRY = 2 // At-and-after protocol 11: only created.
156
+ };
157
+
158
+ struct BucketMetadata
159
+ {
160
+ // Indicates the protocol version used to create / merge this bucket.
161
+ uint32 ledgerVersion;
162
+
163
+ // reserved for future use
164
+ union switch (int v)
165
+ {
166
+ case 0:
167
+ void;
168
+ }
169
+ ext;
138
170
  };
139
171
 
140
172
  union BucketEntry switch (BucketEntryType type)
141
173
  {
142
174
  case LIVEENTRY:
175
+ case INITENTRY:
143
176
  LedgerEntry liveEntry;
144
177
 
145
178
  case DEADENTRY:
146
179
  LedgerKey deadEntry;
180
+ case METAENTRY:
181
+ BucketMetadata metaEntry;
147
182
  };
148
183
 
149
184
  // Transaction sets are the unit used by SCP to decide on transitions
@@ -268,7 +303,7 @@ struct OperationMeta
268
303
  struct TransactionMetaV1
269
304
  {
270
305
  LedgerEntryChanges txChanges; // tx level changes if any
271
- OperationMeta operations<>; // meta for each operation
306
+ OperationMeta operations<>; // meta for each operation
272
307
  };
273
308
 
274
309
  // this is the meta produced when applying transactions
@@ -18,15 +18,16 @@ enum OperationType
18
18
  CREATE_ACCOUNT = 0,
19
19
  PAYMENT = 1,
20
20
  PATH_PAYMENT = 2,
21
- MANAGE_OFFER = 3,
22
- CREATE_PASSIVE_OFFER = 4,
21
+ MANAGE_SELL_OFFER = 3,
22
+ CREATE_PASSIVE_SELL_OFFER = 4,
23
23
  SET_OPTIONS = 5,
24
24
  CHANGE_TRUST = 6,
25
25
  ALLOW_TRUST = 7,
26
26
  ACCOUNT_MERGE = 8,
27
27
  INFLATION = 9,
28
28
  MANAGE_DATA = 10,
29
- BUMP_SEQUENCE = 11
29
+ BUMP_SEQUENCE = 11,
30
+ MANAGE_BUY_OFFER = 12
30
31
  };
31
32
 
32
33
  /* CreateAccount
@@ -37,7 +38,6 @@ Threshold: med
37
38
  Result: CreateAccountResult
38
39
 
39
40
  */
40
-
41
41
  struct CreateAccountOp
42
42
  {
43
43
  AccountID destination; // account to create
@@ -88,10 +88,10 @@ struct PathPaymentOp
88
88
 
89
89
  Threshold: med
90
90
 
91
- Result: ManageOfferResult
91
+ Result: ManageSellOfferResult
92
92
 
93
93
  */
94
- struct ManageOfferOp
94
+ struct ManageSellOfferOp
95
95
  {
96
96
  Asset selling;
97
97
  Asset buying;
@@ -99,17 +99,36 @@ struct ManageOfferOp
99
99
  Price price; // price of thing being sold in terms of what you are buying
100
100
 
101
101
  // 0=create a new offer, otherwise edit an existing offer
102
- uint64 offerID;
102
+ int64 offerID;
103
+ };
104
+
105
+ /* Creates, updates or deletes an offer with amount in terms of buying asset
106
+
107
+ Threshold: med
108
+
109
+ Result: ManageBuyOfferResult
110
+
111
+ */
112
+ struct ManageBuyOfferOp
113
+ {
114
+ Asset selling;
115
+ Asset buying;
116
+ int64 buyAmount; // amount being bought. if set to 0, delete the offer
117
+ Price price; // price of thing being bought in terms of what you are
118
+ // selling
119
+
120
+ // 0=create a new offer, otherwise edit an existing offer
121
+ int64 offerID;
103
122
  };
104
123
 
105
124
  /* Creates an offer that doesn't take offers of the same price
106
125
 
107
126
  Threshold: med
108
127
 
109
- Result: CreatePassiveOfferResult
128
+ Result: CreatePassiveSellOfferResult
110
129
 
111
130
  */
112
- struct CreatePassiveOfferOp
131
+ struct CreatePassiveSellOfferOp
113
132
  {
114
133
  Asset selling; // A
115
134
  Asset buying; // B
@@ -126,7 +145,6 @@ struct CreatePassiveOfferOp
126
145
 
127
146
  Result: SetOptionsResult
128
147
  */
129
-
130
148
  struct SetOptionsOp
131
149
  {
132
150
  AccountID* inflationDest; // sets the inflation destination
@@ -178,10 +196,10 @@ struct AllowTrustOp
178
196
  {
179
197
  // ASSET_TYPE_NATIVE is not allowed
180
198
  case ASSET_TYPE_CREDIT_ALPHANUM4:
181
- opaque assetCode4[4];
199
+ AssetCode4 assetCode4;
182
200
 
183
201
  case ASSET_TYPE_CREDIT_ALPHANUM12:
184
- opaque assetCode12[12];
202
+ AssetCode12 assetCode12;
185
203
 
186
204
  // add other asset types here in the future
187
205
  }
@@ -215,7 +233,6 @@ Result: InflationResult
215
233
 
216
234
  Result: ManageDataResult
217
235
  */
218
-
219
236
  struct ManageDataOp
220
237
  {
221
238
  string64 dataName;
@@ -230,7 +247,6 @@ struct ManageDataOp
230
247
 
231
248
  Result: BumpSequenceResult
232
249
  */
233
-
234
250
  struct BumpSequenceOp
235
251
  {
236
252
  SequenceNumber bumpTo;
@@ -252,10 +268,10 @@ struct Operation
252
268
  PaymentOp paymentOp;
253
269
  case PATH_PAYMENT:
254
270
  PathPaymentOp pathPaymentOp;
255
- case MANAGE_OFFER:
256
- ManageOfferOp manageOfferOp;
257
- case CREATE_PASSIVE_OFFER:
258
- CreatePassiveOfferOp createPassiveOfferOp;
271
+ case MANAGE_SELL_OFFER:
272
+ ManageSellOfferOp manageSellOfferOp;
273
+ case CREATE_PASSIVE_SELL_OFFER:
274
+ CreatePassiveSellOfferOp createPassiveSellOfferOp;
259
275
  case SET_OPTIONS:
260
276
  SetOptionsOp setOptionsOp;
261
277
  case CHANGE_TRUST:
@@ -270,6 +286,8 @@ struct Operation
270
286
  ManageDataOp manageDataOp;
271
287
  case BUMP_SEQUENCE:
272
288
  BumpSequenceOp bumpSequenceOp;
289
+ case MANAGE_BUY_OFFER:
290
+ ManageBuyOfferOp manageBuyOfferOp;
273
291
  }
274
292
  body;
275
293
  };
@@ -299,10 +317,13 @@ case MEMO_RETURN:
299
317
 
300
318
  struct TimeBounds
301
319
  {
302
- uint64 minTime;
303
- uint64 maxTime; // 0 here means no maxTime
320
+ TimePoint minTime;
321
+ TimePoint maxTime; // 0 here means no maxTime
304
322
  };
305
323
 
324
+ // maximum number of operations per transaction
325
+ const MAX_OPS_PER_TX = 100;
326
+
306
327
  /* a transaction is a container for a set of operations
307
328
  - is executed by an account
308
329
  - fees are collected from the account
@@ -310,7 +331,6 @@ struct TimeBounds
310
331
  either all operations are applied or none are
311
332
  if any returns a failing code
312
333
  */
313
-
314
334
  struct Transaction
315
335
  {
316
336
  // account used to run the transaction
@@ -327,7 +347,7 @@ struct Transaction
327
347
 
328
348
  Memo memo;
329
349
 
330
- Operation operations<100>;
350
+ Operation operations<MAX_OPS_PER_TX>;
331
351
 
332
352
  // reserved for future use
333
353
  union switch (int v)
@@ -366,7 +386,7 @@ struct ClaimOfferAtom
366
386
  {
367
387
  // emitted to identify the offer
368
388
  AccountID sellerID; // Account that owns the offer
369
- uint64 offerID;
389
+ int64 offerID;
370
390
 
371
391
  // amount and asset taken from the owner
372
392
  Asset assetSold;
@@ -470,29 +490,29 @@ default:
470
490
  void;
471
491
  };
472
492
 
473
- /******* ManageOffer Result ********/
493
+ /******* ManageSellOffer Result ********/
474
494
 
475
- enum ManageOfferResultCode
495
+ enum ManageSellOfferResultCode
476
496
  {
477
497
  // codes considered as "success" for the operation
478
- MANAGE_OFFER_SUCCESS = 0,
498
+ MANAGE_SELL_OFFER_SUCCESS = 0,
479
499
 
480
500
  // codes considered as "failure" for the operation
481
- MANAGE_OFFER_MALFORMED = -1, // generated offer would be invalid
482
- MANAGE_OFFER_SELL_NO_TRUST = -2, // no trust line for what we're selling
483
- MANAGE_OFFER_BUY_NO_TRUST = -3, // no trust line for what we're buying
484
- MANAGE_OFFER_SELL_NOT_AUTHORIZED = -4, // not authorized to sell
485
- MANAGE_OFFER_BUY_NOT_AUTHORIZED = -5, // not authorized to buy
486
- MANAGE_OFFER_LINE_FULL = -6, // can't receive more of what it's buying
487
- MANAGE_OFFER_UNDERFUNDED = -7, // doesn't hold what it's trying to sell
488
- MANAGE_OFFER_CROSS_SELF = -8, // would cross an offer from the same user
489
- MANAGE_OFFER_SELL_NO_ISSUER = -9, // no issuer for what we're selling
490
- MANAGE_OFFER_BUY_NO_ISSUER = -10, // no issuer for what we're buying
501
+ MANAGE_SELL_OFFER_MALFORMED = -1, // generated offer would be invalid
502
+ MANAGE_SELL_OFFER_SELL_NO_TRUST = -2, // no trust line for what we're selling
503
+ MANAGE_SELL_OFFER_BUY_NO_TRUST = -3, // no trust line for what we're buying
504
+ MANAGE_SELL_OFFER_SELL_NOT_AUTHORIZED = -4, // not authorized to sell
505
+ MANAGE_SELL_OFFER_BUY_NOT_AUTHORIZED = -5, // not authorized to buy
506
+ MANAGE_SELL_OFFER_LINE_FULL = -6, // can't receive more of what it's buying
507
+ MANAGE_SELL_OFFER_UNDERFUNDED = -7, // doesn't hold what it's trying to sell
508
+ MANAGE_SELL_OFFER_CROSS_SELF = -8, // would cross an offer from the same user
509
+ MANAGE_SELL_OFFER_SELL_NO_ISSUER = -9, // no issuer for what we're selling
510
+ MANAGE_SELL_OFFER_BUY_NO_ISSUER = -10, // no issuer for what we're buying
491
511
 
492
512
  // update errors
493
- MANAGE_OFFER_NOT_FOUND = -11, // offerID does not match an existing offer
513
+ MANAGE_SELL_OFFER_NOT_FOUND = -11, // offerID does not match an existing offer
494
514
 
495
- MANAGE_OFFER_LOW_RESERVE = -12 // not enough funds to create a new Offer
515
+ MANAGE_SELL_OFFER_LOW_RESERVE = -12 // not enough funds to create a new Offer
496
516
  };
497
517
 
498
518
  enum ManageOfferEffect
@@ -518,9 +538,42 @@ struct ManageOfferSuccessResult
518
538
  offer;
519
539
  };
520
540
 
521
- union ManageOfferResult switch (ManageOfferResultCode code)
541
+ union ManageSellOfferResult switch (ManageSellOfferResultCode code)
542
+ {
543
+ case MANAGE_SELL_OFFER_SUCCESS:
544
+ ManageOfferSuccessResult success;
545
+ default:
546
+ void;
547
+ };
548
+
549
+ /******* ManageBuyOffer Result ********/
550
+
551
+ enum ManageBuyOfferResultCode
552
+ {
553
+ // codes considered as "success" for the operation
554
+ MANAGE_BUY_OFFER_SUCCESS = 0,
555
+
556
+ // codes considered as "failure" for the operation
557
+ MANAGE_BUY_OFFER_MALFORMED = -1, // generated offer would be invalid
558
+ MANAGE_BUY_OFFER_SELL_NO_TRUST = -2, // no trust line for what we're selling
559
+ MANAGE_BUY_OFFER_BUY_NO_TRUST = -3, // no trust line for what we're buying
560
+ MANAGE_BUY_OFFER_SELL_NOT_AUTHORIZED = -4, // not authorized to sell
561
+ MANAGE_BUY_OFFER_BUY_NOT_AUTHORIZED = -5, // not authorized to buy
562
+ MANAGE_BUY_OFFER_LINE_FULL = -6, // can't receive more of what it's buying
563
+ MANAGE_BUY_OFFER_UNDERFUNDED = -7, // doesn't hold what it's trying to sell
564
+ MANAGE_BUY_OFFER_CROSS_SELF = -8, // would cross an offer from the same user
565
+ MANAGE_BUY_OFFER_SELL_NO_ISSUER = -9, // no issuer for what we're selling
566
+ MANAGE_BUY_OFFER_BUY_NO_ISSUER = -10, // no issuer for what we're buying
567
+
568
+ // update errors
569
+ MANAGE_BUY_OFFER_NOT_FOUND = -11, // offerID does not match an existing offer
570
+
571
+ MANAGE_BUY_OFFER_LOW_RESERVE = -12 // not enough funds to create a new Offer
572
+ };
573
+
574
+ union ManageBuyOfferResult switch (ManageBuyOfferResultCode code)
522
575
  {
523
- case MANAGE_OFFER_SUCCESS:
576
+ case MANAGE_BUY_OFFER_SUCCESS:
524
577
  ManageOfferSuccessResult success;
525
578
  default:
526
579
  void;
@@ -565,7 +618,7 @@ enum ChangeTrustResultCode
565
618
  // cannot create with a limit of 0
566
619
  CHANGE_TRUST_LOW_RESERVE =
567
620
  -4, // not enough funds to create a new trust line,
568
- CHANGE_TRUST_SELF_NOT_ALLOWED = -5 // trusting self is not allowed
621
+ CHANGE_TRUST_SELF_NOT_ALLOWED = -5 // trusting self is not allowed
569
622
  };
570
623
 
571
624
  union ChangeTrustResult switch (ChangeTrustResultCode code)
@@ -695,7 +748,9 @@ enum OperationResultCode
695
748
 
696
749
  opBAD_AUTH = -1, // too few valid signatures / wrong network
697
750
  opNO_ACCOUNT = -2, // source account was not found
698
- opNOT_SUPPORTED = -3 // operation not supported at this time
751
+ opNOT_SUPPORTED = -3, // operation not supported at this time
752
+ opTOO_MANY_SUBENTRIES = -4, // max number of subentries already reached
753
+ opEXCEEDED_WORK_LIMIT = -5 // operation did too much work
699
754
  };
700
755
 
701
756
  union OperationResult switch (OperationResultCode code)
@@ -709,10 +764,10 @@ case opINNER:
709
764
  PaymentResult paymentResult;
710
765
  case PATH_PAYMENT:
711
766
  PathPaymentResult pathPaymentResult;
712
- case MANAGE_OFFER:
713
- ManageOfferResult manageOfferResult;
714
- case CREATE_PASSIVE_OFFER:
715
- ManageOfferResult createPassiveOfferResult;
767
+ case MANAGE_SELL_OFFER:
768
+ ManageSellOfferResult manageSellOfferResult;
769
+ case CREATE_PASSIVE_SELL_OFFER:
770
+ ManageSellOfferResult createPassiveSellOfferResult;
716
771
  case SET_OPTIONS:
717
772
  SetOptionsResult setOptionsResult;
718
773
  case CHANGE_TRUST:
@@ -727,6 +782,8 @@ case opINNER:
727
782
  ManageDataResult manageDataResult;
728
783
  case BUMP_SEQUENCE:
729
784
  BumpSequenceResult bumpSeqResult;
785
+ case MANAGE_BUY_OFFER:
786
+ ManageBuyOfferResult manageBuyOfferResult;
730
787
  }
731
788
  tr;
732
789
  default: