Encoding data in a pattern of symbols on a surface. A processor separates
an ordered sequence of digits representative of the encoded data into a
plurality of sequential windows. Each of the sequential windows includes
a partial sequence of the ordered sequence of digits. The processor
further transforms the partial sequence included in each sequential
window into a series of digits. A symbol is arranged within a plurality
of surface windows on the surface. Each surface window corresponds to one
of the sequential windows. The symbol is positioned within each surface
window based on one of the transformed series of digits. And the position
of the symbol within the surface window is indicative of the encoded
data.