    BSIP: 0037
    Title: Allow new asset name to end with a number
    Author: oxarbitrage <https://github.com/oxarbitrage>
    Status: Accepted
    Type: Protocol
    Created: 2018-02-23
    Discussion: https://bitsharestalk.org/index.php?topic=25997.0
    Replaces: -
    Worker: 1.14.98

# Abstract

Currently, the bitshares-core do not allow asset creation that start or end with a numerical character. Creation of index style assets like `CRYPTO500` are not possible.

This BSIP proposes a protocol change to allow number characters at the end of the created asset name.

# Motivation

Economical, enable more asset names to be created in the exchange.


# Rationale

No valid reason was found until now about why this is not allowed. The creation of index style assets will bring new business to the exchange.

# Specifications

Restriction in asset names are detailed in `asset_ops.cpp`:

```
/**
 *  Valid symbols can contain [A-Z0-9], and '.'
 *  They must start with [A, Z]
 *  They must end with [A, Z]
 *  They can contain a maximum of one '.'
 */
 ```
 
 BSIP proposes to change third rule to:
 
 `They must end with [A, Z0-9]`
 
As file where the changes are needed(`asset_ops.cpp`) do not have access to the database, we are unable to use `head_block_time()` to create the hardfork guard.

The process is more complicated and it is described as follows:(quote from @abit in github ticker: https://github.com/bitshares/bitshares-core/issues/620#issuecomment-364803143):

"To make the change, need to loose the validation code in `asset_ops.cpp`, add a hard fork guard code with original rule to asset_evaluator to make sure no rule change before the hard fork, add corresponding hard fork guard code in proposal_evaluator. After hard fork, those hard fork guard code can be safely removed."
 
# Discussion

https://bitsharestalk.org/index.php?topic=25997.0

# Summary for Shareholders

[to be added if any]

# Copyright

This document is placed in the public domain.

# See Also

* https://github.com/bitshares/bitshares-core/issues/620
* https://github.com/bitshares/bsips/issues/52
