size inference