allow empty annotations; reafactor to commonize base strategy