improved architecture
google name resolver