abstract tile assembly model