fix: range support; some initial * support