improved by Simon430629 | SimScale