CR changes: removed ' around key name
added unit tests
CR changes: used array instead of object
CR change: use array.join() once we return array not an object
CR change: fixed default value
CR change: make error more verbose in logs
CR change: got rid of underscore