implement full try() syntax