q21 added & optimizations