changed source formatting, rearranged a bit
multilang support works fairly ok