i18n code deobsfucated and moved to separate file