How to get each layer in vision::models::ResNet101

c++ libtorch
vision::models::ResNet101 model101 = vision::models::ResNet101();
how to get each layer in model101 as children and features

/////////////////////////////////////////////////////////////////////////////////////////////////
python
resnet101 = torchvision.models.resnet101(pretrained=self._pretrained)

    # list(resnet101.children()) consists of following modules
    #   [0] = Conv2d, [1] = BatchNorm2d, [2] = ReLU,
    #   [3] = MaxPool2d, [4] = Sequential(Bottleneck...),
    #   [5] = Sequential(Bottleneck...),
    #   [6] = Sequential(Bottleneck...),
    #   [7] = Sequential(Bottleneck...),
    #   [8] = AvgPool2d, [9] = Linear
    children = list(resnet101.children())
    features = children[:-3]
    num_features_out = 1024

    hidden = children[-3]
    num_hidden_out = 2048

    for parameters in [feature.parameters() for i, feature in enumerate(features) if i <= 4]:
        for parameter in parameters:
            parameter.requires_grad = False

    features = nn.Sequential(*features)

find answer ~~~

//refer to:
//~/pytorch/test/cpp/api/module.cpp
//~/vision-0.8.2/torchvision/csrc/models/resnet.h
vision::models::ResNet101 model = vision::models::ResNet101();
torch::OrderedDict<std::string, std::shared_ptrtorch::nn::Module> children = model->named_modules();
for(size_t i=0; i<children.size(); i++)
std::cout << children[i].key() << std::endl;