performance opimitzed poke, not going through whole canvas again