https://articles.luminalang.com/a/micropass-inference/