Gradually typed languages allow programmers to mix statically and dynamically code, enabling them incrementally reap the benefits of static typing as they add type annotations their code. However, this migration process is typically a manual effort with limited tool support. This paper examines problem automated migration: given dynamic program, infer additional or improved annotations. Existin...