FYI; thats less strict than the original code