added some type annotations
merge