[TorchScript][@property] Transfer to ScriptedModel, can't find attribute in defined @property

When turning model to scripted model,

the error occur: has no attribute xxxxx

Small Snippet:

class Base(nn.Module):
    def __init__(self):
        super(Base, self).__init__()
        self.__module_name: List[str] = []
    @property
    def module_name(self):
        return self.__module_name

model = Base()
ScriptModel = torch.jit.script(model, (input,))
.................................................
[Error]: Module 'Base' has no attribute '__module_name' : File "/xxx/xxx/xxx/Base.py"
    @property
    def module_name(self):
        return self.__module_name
               ~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE

Still can’t figure out why. Any solution will be great.
Thanks!

Solved by bellow:
self.__module_name → self._module_name

class Base(nn.Module):
    def __init__(self):
        super(Base, self).__init__()
        self._module_name: List[str] = []
    @property
    def module_name(self):
        return self._module_name