Add input type range

*NOT READY FOR MERGE*