#8 Generate a function value
#10 Support empty messages
v1.4.2