#include <iostream>

class Trace {
    int id_;

public:
    explicit Trace(int id) : id_{id} {
        std::cout << "build " << id_ << '\n';
    }

    ~Trace() {
        std::cout << "destroy " << id_ << '\n';
    }
};

void run(bool stop) {
    Trace outer{1};
    {
        Trace inner{2};
        if (stop) {
            std::cout << "stop" << '\n';
            return;
        }
        std::cout << "work" << '\n';
    }
    std::cout << "after" << '\n';
}

int main() {
    run(true);
    return 0;
}
