passed all test cases. fix #8
generate shorter message id.
cache test case. fix #8