package main
import "fmt"
var a = 10
func test() {
fmt.Println("test:", a)
}
func main() {
a = 1 // изменяем значение а из лексического окружения функции test
test()
a := 2 // создаем новое окружение с новой a, при этом старая никуда не девается
test()
fmt.Println(a)
}
cGFja2FnZSBtYWluCgppbXBvcnQgImZtdCIKCnZhciBhID0gMTAKCmZ1bmMgdGVzdCgpIHsKCWZtdC5QcmludGxuKCJ0ZXN0OiIsIGEpCn0KCmZ1bmMgbWFpbigpIHsKCWEgPSAxIC8vINC40LfQvNC10L3Rj9C10Lwg0LfQvdCw0YfQtdC90LjQtSDQsCDQuNC3INC70LXQutGB0LjRh9C10YHQutC+0LPQviDQvtC60YDRg9C20LXQvdC40Y8g0YTRg9C90LrRhtC40LggdGVzdAoJdGVzdCgpCglhIDo9IDIgLy8g0YHQvtC30LTQsNC10Lwg0L3QvtCy0L7QtSDQvtC60YDRg9C20LXQvdC40LUg0YEg0L3QvtCy0L7QuSBhLCDQv9GA0Lgg0Y3RgtC+0Lwg0YHRgtCw0YDQsNGPINC90LjQutGD0LTQsCDQvdC1INC00LXQstCw0LXRgtGB0Y8KCXRlc3QoKQoJZm10LlByaW50bG4oYSkKfQ==