more block logic