messing with patterns and various apis