ty-williams-pattern