less parser implementation