added block/counter stuff but not finished!