allow the empty string input. fixes #27