From my very basic understanding, yeah that’s basically what it does. However it accounts for a whole lot more into adding or subtracting from UTC. Timezones aren’t absolute, they’re political. Timezones have weird rules, and history that needs to be somehow expressed in the code to get the right time. That’s what’s sets tz_database apart from just looking at a map and saying it’s +7 UTC.