~~~ pattern builder without strings