A lot of changes to input handling and pattern modification.