added patterns package