optional block now working