updated block processing