shorten up syntax, work on agent