Commit Graph

92 Commits

Author SHA1 Message Date
86259b35a6 Add a config option and arg to set gas price for auto fees calculation (#81)
Part of [Create a public laconicd testnet](https://www.notion.so/Create-a-public-laconicd-testnet-896a11bdd8094eff8f1b49c0be0ca3b8)
Requires cerc-io/registry-sdk#22

Behaviour in different configuration scenarios:
- Gas set, fees set to `Xalnt`:

  ```bash
  # Example
  gas: 500000
  fees: 500000alnt
  gasPrice:
  ```

  - `gasPrice` config ignored
  - tx rejected if given `fees` < `gas` * `min-gas-price` set by the node
  - tx fails mid-execution if it runs out of given `gas`
- Fees not set, gas price set to `Xalnt`:

  ```bash
  # Example
  gas:
  fees:
  gasPrice: 1alnt
  ```

  - `gas` config ignored
  - uses `auto` fee calculation using gas estimation with [default multiplier](https://git.vdb.to/cerc-io/registry-sdk/src/branch/main/src/constants.ts) (`2`) value from `registry-sdk`
  - tx rejected if given `gasPrice` < `min-gas-price` set by the node
  - tx fails mid-execution if it runs out of calculated gas
- Fees set to a `X` (without `alnt` suffix), gas price set to `Yalnt`:

  ```bash
  # Example
  gas:
  fees: 1.8
  gasPrice: 1alnt
  ```

  - `gas` config ignored
  - uses `auto` fee calculation using gas estimation with `fees` as the multiplier
  - tx rejected if given `gasPrice` < `min-gas-price` set by the node
  - tx fails mid-execution if it runs out of calculated gas, can be retried with a higher gas estimation multiplier (`fees`)
- Fees and gas price both not set:

  ```bash
  # Example
  gas:
  fees:
  gasPrice:
  ```

  - `gas` config ignored
  - uses `auto` fee calculation using gas estimation
  - throws error:
    ```bash
    Gas price must be set in the client options when auto gas is used.
    ```

The provided config can be overridden with CLI args if required.

Co-authored-by: IshaVenikar <ishavenikar7@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#81
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-09-06 09:44:47 +00:00
cf4bf5ed42 Add pagination to list records CLI (#82)
Part of [Create a public laconicd testnet](https://www.notion.so/Create-a-public-laconicd-testnet-896a11bdd8094eff8f1b49c0be0ca3b8)
Requires cerc-io/registry-sdk#27

Example CLI commands with changes:
```bash
laconic registry record list --type WebsiteRegistrationRecord --all true | jq 'length'
# 16

laconic registry record list --limit 4 --type WebsiteRegistrationRecord --all true | jq '[.[] | {id, createTime}]'
# [
#   {
#     "id": "bafyreifmjc7kc76ihrolzqhynwrebjyr7bw7pstlv2lcdq5qu4cleql7ke",
#     "createTime": "2024-09-05T13:25:46Z"
#   },
#   {
#     "id": "bafyreifipscluxu43nx5frx54tyxnkkki2edsw3jydgexfjsluq674esfa",
#     "createTime": "2024-09-05T13:25:49Z"
#   },
#   {
#     "id": "bafyreidco4d3pjro2fp6rinlazm3xcsnfm2ibzeigsqwlmmtvne25ukpjy",
#     "createTime": "2024-09-05T13:25:52Z"
#   },
#   {
#     "id": "bafyreigqoz4ffaqod5fut3rebrtctnp3ktvph46fgocmgmfqbkofnmombe",
#     "createTime": "2024-09-05T13:25:55Z"
#   }
# ]

laconic registry record list --limit 4 --offset 2 --type WebsiteRegistrationRecord --all true | jq '[.[] | {id, createTime}]'
# [
#   {
#     "id": "bafyreidco4d3pjro2fp6rinlazm3xcsnfm2ibzeigsqwlmmtvne25ukpjy",
#     "createTime": "2024-09-05T13:25:52Z"
#   },
#   {
#     "id": "bafyreigqoz4ffaqod5fut3rebrtctnp3ktvph46fgocmgmfqbkofnmombe",
#     "createTime": "2024-09-05T13:25:55Z"
#   },
#   {
#     "id": "bafyreieku22he546fsxrgwxd3mfpbtcobwjasl6zimkizl65rwvybwerci",
#     "createTime": "2024-09-05T13:25:58Z"
#   },
#   {
#     "id": "bafyreia4zjuap7v3tnilersrzsht75mqf3mhzsk72jgpcct7u6lj54zwyq",
#     "createTime": "2024-09-05T13:26:01Z"
#   }
# ]
```

Co-authored-by: IshaVenikar <ishavenikar7@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#82
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-09-05 13:51:42 +00:00
6055da62c7 Fix default 'account get' output. (#77)
The current code throws an exception if no address is specified.  It is supposed to return the current account info.

Reviewed-on: cerc-io/laconic-registry-cli#77
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-08-20 19:01:24 +00:00
aa46032bda Bump version (#79)
Reviewed-on: cerc-io/laconic-registry-cli#79
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-08-20 03:46:46 +00:00
c67961869b 927: Add gettx command and have send command return the tx hash. (#78)
To support cerc-io/stack-orchestrator#927, add a new token command `gettx` to inspect a previous transaction, and adjust the output of `send` to include the tx details.

For example:

```
❯ laconic registry tokens send --address laconic1yqpc7cyfetpgmqtkk0ukevugeaau9p0cwmjlsu --type alnt --quantity 1000
{
  "tx": {
    "hash": "977152CBE474613E1BBAFEF286F12134829FAF3C9E7C8349149DE3E687B816FC",
    "height": 343369,
    "index": 0,
    "code": 0,
    "log": "",
    "sender": "laconic14wc07wa3r7rppru43g9jxkzhqnhmvfm4dgey6s",
    "recipient": "laconic1yqpc7cyfetpgmqtkk0ukevugeaau9p0cwmjlsu",
    "amount": "1000alnt"
  },
  "accounts": [
    {
      "address": "laconic14wc07wa3r7rppru43g9jxkzhqnhmvfm4dgey6s",
      "pubKey": "AvOh0Hdjj5/YKMTPEm/oLgvpg4gIP1vB4d1NhBMq6/+B",
      "number": 3,
      "sequence": 91,
      "balance": [
        {
          "type": "alnt",
          "quantity": 1.2899999999709944e+22
        }
      ]
    },
    {
      "address": "laconic1yqpc7cyfetpgmqtkk0ukevugeaau9p0cwmjlsu",
      "pubKey": "A7XYVHLemQYUjXe6VnSDlcyzLnpdJ8CE8zvDiZtgxqnT",
      "number": 1,
      "sequence": 1,
      "balance": [
        {
          "type": "alnt",
          "quantity": 1.289999999991e+22
        }
      ]
    }
  ]
}
```

```
❯ laconic registry tokens gettx --hash 977152CBE474613E1BBAFEF286F12134829FAF3C9E7C8349149DE3E687B816FC
{
  "hash": "977152CBE474613E1BBAFEF286F12134829FAF3C9E7C8349149DE3E687B816FC",
  "height": 343369,
  "index": 0,
  "code": 0,
  "log": "",
  "sender": "laconic14wc07wa3r7rppru43g9jxkzhqnhmvfm4dgey6s",
  "recipient": "laconic1yqpc7cyfetpgmqtkk0ukevugeaau9p0cwmjlsu",
  "amount": "1000alnt",
  "raw": "0A91010A8E010A1C2F636F736D6F732E62616E6B2E763162657461312E4D736753656E64126E0A2E6C61636F6E696331347763303777613372377270707275343367396A786B7A68716E686D76666D34646765793673122E6C61636F6E6963317971706337637966657470676D71746B6B30756B657675676561617539703063776D6A6C73751A0C0A04616C6E7412043130303012680A500A460A1F2F636F736D6F732E63727970746F2E736563703235366B312E5075624B657912230A2102F3A1D077638F9FD828C4CF126FE82E0BE98388083F5BC1E1DD4D84132AEBFF8112040A020801185A12140A0E0A04616C6E7412063430303030301080B5181A4088DF7BA4B63EA68E185AB2887C9EC29EBC4158874BC037816B8494AD36D3B2433B5223CECC336D4624BB7FEF4DBB4A8B5F4707ACD8E55443312009E9473DF821"
}
```

Reviewed-on: cerc-io/laconic-registry-cli#78
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-08-20 03:19:48 +00:00
acd4791355 Accept keys with or without hex prefix (#75)
Part of [laconicd testnet validator enrollment](https://www.notion.so/laconicd-testnet-validator-enrollment-6fc1d3cafcc64fef8c5ed3affa27c675)

Reviewed-on: cerc-io/laconic-registry-cli#75
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-08-14 05:32:08 +00:00
30654bb0ef Add a command to list authorities (#74)
Part of [Create a public laconicd testnet](https://www.notion.so/Create-a-public-laconicd-testnet-896a11bdd8094eff8f1b49c0be0ca3b8)

Co-authored-by: IshaVenikar <ishavenikar7@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#74
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-08-05 10:22:07 +00:00
70e63c74f1 Replace photon with alnt token denom (#73)
Part of [laconicd testnet validator enrollment](https://www.notion.so/laconicd-testnet-validator-enrollment-6fc1d3cafcc64fef8c5ed3affa27c675)

Co-authored-by: IshaVenikar <ishavenikar7@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#73
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-07-30 13:24:46 +00:00
901126d23f Remove beta dist-tag from publish workflow (#72)
Part of [Rename laconic2d to laconicd](https://www.notion.so/Rename-laconic2d-to-laconicd-9028d0c020d24d1288e92ebcb773d7a7)

Reviewed-on: cerc-io/laconic-registry-cli#72
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-07-25 05:53:22 +00:00
4f5de6ff38 Rename laconic2d to laconicd repo in CI (#71)
Part of [Rename laconic2d to laconicd](https://www.notion.so/Rename-laconic2d-to-laconicd-9028d0c020d24d1288e92ebcb773d7a7)

Reviewed-on: cerc-io/laconic-registry-cli#71
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
2024-07-23 04:43:28 +00:00
aa2117e472 Upgrade registry-sdk package version (#70)
Part of [laconicd testnet validator enrollment](https://www.notion.so/laconicd-testnet-validator-enrollment-6fc1d3cafcc64fef8c5ed3affa27c675)

- Resolves cerc-io/testnet-laconicd-stack#4 (comment)

Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#70
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
2024-07-22 06:18:02 +00:00
e6b747fb48 Update records publishing script to support YAML records (#68)
Part of [Define record schemas for entities](https://www.notion.so/Define-record-schemas-for-entities-e13e84d7cf7c4087aae69035733faff0)

Reviewed-on: cerc-io/laconic-registry-cli#68
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-06-25 06:36:46 +00:00
ed06cc05a6 Replace repository URL in records with published repo record id (#67)
Part of [Define record schemas for entities](https://www.notion.so/Define-record-schemas-for-entities-e13e84d7cf7c4087aae69035733faff0)

Reviewed-on: cerc-io/laconic-registry-cli#67
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-06-24 13:45:56 +05:30
aff309eaad Use dist-tag beta for publishing (#65)
Part of [Create a public laconicd testnet](https://www.notion.so/Incentivized-testnet-for-laconicd-53e4c32aa0c741baa062b15d85c1e359?pvs=21)

Reviewed-on: cerc-io/laconic-registry-cli#65
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-06-19 05:36:29 +00:00
b9d6804c17 Add a script to publish records from a given directory (#62)
Part of https://www.notion.so/Define-record-schemas-for-entities-e13e84d7cf7c4087aae69035733faff0

Reviewed-on: cerc-io/laconic-registry-cli#62
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-05-09 10:35:54 +00:00
6510c1b13f Rename laconic2d to laconicd and upgrade SDK (#61)
Part of https://www.notion.so/Rename-laconic2d-to-laconicd-9028d0c020d24d1288e92ebcb773d7a7

Co-authored-by: neeraj <neeraj.rtly@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#61
Co-authored-by: Prathamesh Musale <prathamesh@noreply.git.vdb.to>
Co-committed-by: Prathamesh Musale <prathamesh@noreply.git.vdb.to>
2024-04-02 13:25:31 +00:00
2e4dcf7e63 Add instructions to run CLI tests (#58)
Part of https://www.notion.so/Create-laconic-registry-SDK-d3a636d4aba44f7cbba3bd99b7146811

Co-authored-by: neeraj <neeraj.rtly@gmail.com>
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Reviewed-on: cerc-io/laconic-registry-cli#58
Co-authored-by: Prathamesh Musale <prathamesh@noreply.git.vdb.to>
Co-committed-by: Prathamesh Musale <prathamesh@noreply.git.vdb.to>
2024-03-21 11:19:14 +00:00
9c992ebe71 Rename cns to registry in CLI (#57)
Part of https://www.notion.so/Create-laconic-registry-SDK-d3a636d4aba44f7cbba3bd99b7146811

Co-authored-by: neeraj <neeraj.rtly@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#57
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
2024-03-19 04:42:42 +00:00
a33445aa4d Use registry-sdk in CLI (#56)
Part of https://www.notion.so/Create-laconic-registry-SDK-d3a636d4aba44f7cbba3bd99b7146811

- Use user key as transaction private key in record publish cmd

Co-authored-by: neeraj <neeraj.rtly@gmail.com>
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Reviewed-on: cerc-io/laconic-registry-cli#56
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
2024-03-18 13:58:52 +00:00
cbff9646c7 Upgrade SDK version (#55)
Part of cerc-io/laconicd#144

Reviewed-on: cerc-io/laconic-registry-cli#55
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-02-08 06:27:12 +00:00
c3f8d53f09 Setup linter and add it to CI (#54)
- Setup eslint with husky for precommit lint
- Fix existing lint errors
- Setup linter CI

Reviewed-on: cerc-io/laconic-registry-cli#54
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-01-29 05:21:34 +00:00
b01201ca50 Add CLI tests and setup CI (#53)
Part of cerc-io/laconic-registry-cli#52

- Add tests for the CLI following demo steps present in the README
- Setup CI to run the CLI tests

Reviewed-on: cerc-io/laconic-registry-cli#53
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-01-29 04:46:32 +00:00
5a0298dda5 Fix yarn.lock (#51)
Reviewed-on: cerc-io/laconic-registry-cli#51
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-01-15 18:23:30 +00:00
97b74760d9 Bump version. (#50)
Reviewed-on: cerc-io/laconic-registry-cli#50
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-01-15 18:03:26 +00:00
6814707752 Update SDK version. (#48)
Reviewed-on: cerc-io/laconic-registry-cli#48
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-21 21:38:11 +00:00
e1da44bae7 Bump version (#47)
Reviewed-on: cerc-io/laconic-registry-cli#47
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-13 21:13:39 +00:00
51fd81a082 Decode JSON strings automatically. 2023-12-13 15:10:09 -06:00
3cdd930b82 0.1.5 (#46)
Reviewed-on: cerc-io/laconic-registry-cli#46
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-08 04:55:27 +00:00
80d1b01713 SDK 0.1.11 (#45)
Reviewed-on: cerc-io/laconic-registry-cli#45
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-08 04:53:08 +00:00
f3c0ae8c34 Use SDK 0.1.10 (#44)
Reviewed-on: cerc-io/laconic-registry-cli#44
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-07 22:15:04 +00:00
f5625d0c87 Take the path as-is, not relative to the current dir. (#43)
Reviewed-on: cerc-io/laconic-registry-cli#43
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-12-05 03:53:15 +00:00
fb381c07f3 Fix cns name resolve (#42)
The `cns name resolve` does not return the result.  Obviously it should.

Reviewed-on: cerc-io/laconic-registry-cli#42
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-30 05:01:25 +00:00
145da8c453 v0.1.2 (#41)
Reviewed-on: cerc-io/laconic-registry-cli#41
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-29 17:39:18 +00:00
6e0829d91f Filter by arbitrary attributes (#40)
```
laconic cns record list \
  --type GeneralRecord \
  --value anything-goes-here \
  --category filter-by-this \
  --bond-id d0094c75e267abb709d631abd7bfaa8d610413f5766ddfc07db735822905d641 \
  --owner AB0A17A1EBF47DDCF6AB267CA8E07B7EA836E1AF \
  --all
```

Reviewed-on: cerc-io/laconic-registry-cli#40
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-28 23:22:57 +00:00
1fa32a3cc1 Add .gitea workflows (#39)
Reviewed-on: cerc-io/laconic-registry-cli#39
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-22 04:19:39 +00:00
129019105d Convert sub-objects (other than arrays) in YAML to JSON strings automatically. (#38)
This allows us to support attributes in YAML like this:

```
  meta:
    foo: bar
    bar:
      baz: boz
```

Which will automatically become:

```
"meta": "{\"foo\":\"bar\",\"bar\":{\"baz\":\"boz\"}}"
```

> Note: cosmos-sdk's protobuf code does not support maps (https://github.com/cosmos/cosmos-sdk/issues/15254), or else we would just use a map.

Reviewed-on: cerc-io/laconic-registry-cli#38
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-20 22:01:39 +00:00
Zach
37b69da3bb
Merge pull request #35 from cerc-io/dboreham/remove-lerna-file
Remove unnecessary lerna.json file
2023-04-04 09:14:47 -04:00
707b3049ef Remove unnecessary lerna.json file 2023-04-04 07:09:48 -06:00
Zach
a986e4cccb
Merge pull request #33 from cerc-io/murali/output
fix cmd outputs
2023-03-28 08:30:56 -04:00
0xmuralik
61a2aaab0f fix send output 2023-03-27 19:37:16 +05:30
0xmuralik
0c0eb79fa3 eliminate dry code 2023-03-27 18:14:42 +05:30
0xmuralik
8ebb80beed json format 2023-03-27 17:35:47 +05:30
0xmuralik
9b9e8829ec name outputs 2023-03-27 16:58:14 +05:30
0xmuralik
1de17a40ef authority and auction output 2023-03-27 13:58:41 +05:30
0xmuralik
d3020daf2e bond and records outputs 2023-03-27 13:14:02 +05:30
Zach
495bbfdb3c
Merge pull request #21 from cerc-io/integrated_testing
Integrated testing
2023-03-17 14:21:49 -04:00
Zach
64a796c421
Merge pull request #30 from cerc-io/murali/bond
get bond id
2023-03-15 21:26:47 -04:00
0xmuralik
3258e4cfe3 get bond id 2023-03-07 16:27:53 +05:30
Zach
cbcc31d6bd
Merge pull request #23 from cerc-io/0xmuralik-patch-1
Update README.md
2023-03-06 21:10:10 -05:00
Zach
a5e0a6dd22
Merge pull request #24 from cerc-io/0xmuralik-patch-2
Update README.md to fix null auction
2023-03-06 17:50:55 -05:00