first block: gradient block