sync with SemantEco Annotator branch