make repainting more efficient; add name struct