<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _calculateCrcString(inputstring):
 """Calculate CRC-16 for Modbus. Args: inputstring (str):
 An arbitrary-length message (without the CRC). Returns: A two-byte CRC string, where the least significant byte is first. """

    _checkString(inputstring, description='input CRC string')
 
    # Preload a 16-bit register with ones
    register = 0xFFFF

    for char in inputstring:
        register = (register >> 8) ^ _CRC16TABLE[(register ^ ord(char)) & 0xFF]
 
    return _numToTwoByteString(register, LsbFirst=True)