dimples 1.6.3__tar.gz → 1.6.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dimples-1.6.3 → dimples-1.6.4}/PKG-INFO +1 -1
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/conf_item.py +30 -18
- {dimples-1.6.3 → dimples-1.6.4}/dimples.egg-info/PKG-INFO +1 -1
- {dimples-1.6.3 → dimples-1.6.4}/setup.py +1 -1
- {dimples-1.6.3 → dimples-1.6.4}/LICENSE +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/README.md +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/checker.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/checkpoint.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/compat/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/compat/loader.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/app/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/app/filter.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/app/group.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/app/handler.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/commands.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/creator.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/customized.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/group.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/grp_expel.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/grp_invite.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/grp_join.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/grp_query.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/grp_quit.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/grp_reset.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/grp_resign.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/cpu/handshake.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/facebook.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/messenger.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/network/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/network/session.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/network/state.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/network/transition.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/packer.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/processor.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/client/terminal.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/anonymous.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/ans.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/archivist.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/checker.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/address.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/compatible.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/compressor.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/entity.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/loader.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/meta.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/compat/network.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/dbi/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/dbi/account.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/dbi/message.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/dbi/session.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/facebook.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/messenger.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/mkm/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/mkm/bot.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/mkm/station.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/mkm/utils.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/packer.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/processer.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/ans.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/app.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/block.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/groups.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/grp_admin.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/handshake.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/login.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/mute.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/password.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/report.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/roles.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/utils.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/protocol/version.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/queue.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/register.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/common/session.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/flexible.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/gate.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/gatekeeper.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/mars.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/mtp.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/protocol/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/protocol/mars.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/protocol/ws.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/queue.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/seeker.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/session.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/conn/ws.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/account.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/base.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/document.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/group.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/group_history.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/group_keys.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/login.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/meta.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/private.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/station.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/dos/user.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/message.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/base.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/document.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/group.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/grp_history.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/grp_keys.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/login.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/message.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/meta.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/station.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/redis/user.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/session.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_base.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_cipherkey.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_document.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_group.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_group_history.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_group_keys.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_login.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_message.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_meta.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_private.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_station.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/database/t_user.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/edge/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/edge/messenger.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/edge/octopus.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/edge/shared.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/edge/start.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/emitter.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/admin.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/builder.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/delegate.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/emitter.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/helper.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/manager.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/packer.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/group/shared.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/register/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/register/base.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/register/ext.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/register/run.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/register/shared.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/checker.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/cpu/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/cpu/ans.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/cpu/creator.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/cpu/document.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/cpu/handshake.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/cpu/login.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/cpu/report.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/deliver.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/dis_roamer.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/dispatcher.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/facebook.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/messenger.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/packer.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/processor.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/push.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/session.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/session_center.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/server/trace.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/station/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/station/handler.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/station/shared.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/station/start.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/__init__.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/cache.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/checker.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/config.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/digest.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/http.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples/utils/log.py +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples.egg-info/SOURCES.txt +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples.egg-info/dependency_links.txt +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples.egg-info/entry_points.txt +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples.egg-info/requires.txt +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/dimples.egg-info/top_level.txt +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/setup.cfg +0 -0
- {dimples-1.6.3 → dimples-1.6.4}/tests/test.py +0 -0
|
@@ -32,7 +32,7 @@ from aiou import JSONFile
|
|
|
32
32
|
|
|
33
33
|
from dimsdk import JSON
|
|
34
34
|
from dimsdk import Dictionary
|
|
35
|
-
from dimsdk import ID
|
|
35
|
+
from dimsdk import EntityType, ID
|
|
36
36
|
from dimsdk import Facebook
|
|
37
37
|
|
|
38
38
|
from .log import Logging
|
|
@@ -58,7 +58,7 @@ class IConfig(ABC):
|
|
|
58
58
|
raise NotImplementedError('NotImplemented')
|
|
59
59
|
|
|
60
60
|
@abstractmethod
|
|
61
|
-
def get_list(self, section: str, option: str, separator: str = ',') -> List[str]:
|
|
61
|
+
def get_list(self, section: str, option: str, separator: str = ',') -> Optional[List[str]]:
|
|
62
62
|
raise NotImplementedError('NotImplemented')
|
|
63
63
|
|
|
64
64
|
|
|
@@ -123,6 +123,7 @@ class MessageTransferAgent(Dictionary):
|
|
|
123
123
|
|
|
124
124
|
|
|
125
125
|
class Supervisor(Logging):
|
|
126
|
+
""" System Administrators """
|
|
126
127
|
|
|
127
128
|
def __init__(self, facebook: Facebook):
|
|
128
129
|
super().__init__()
|
|
@@ -135,32 +136,43 @@ class Supervisor(Logging):
|
|
|
135
136
|
return ref()
|
|
136
137
|
|
|
137
138
|
# noinspection PyMethodMayBeStatic
|
|
138
|
-
def
|
|
139
|
+
def check_user(self, identifier: ID) -> bool:
|
|
140
|
+
""" Filter user """
|
|
141
|
+
return identifier.type == EntityType.USER
|
|
142
|
+
|
|
143
|
+
# noinspection PyMethodMayBeStatic
|
|
144
|
+
def get_identifiers(self, config: IConfig, section: str, option: str) -> List[ID]:
|
|
145
|
+
""" Get ID list from config """
|
|
139
146
|
array = config.get_list(section=section, option=option)
|
|
140
|
-
if array is None
|
|
141
|
-
return None
|
|
142
|
-
else:
|
|
143
|
-
return ID.convert(array=array)
|
|
147
|
+
return [] if array is None else ID.convert(array=array)
|
|
144
148
|
|
|
145
|
-
async def get_users(self, config: IConfig, section: str, option: str = 'supervisors') ->
|
|
149
|
+
async def get_users(self, config: IConfig, section: str = 'system', option: str = 'supervisors') -> Set[ID]:
|
|
150
|
+
""" Get system administrators from config """
|
|
151
|
+
all_users = set()
|
|
146
152
|
array = self.get_identifiers(config=config, section=section, option=option)
|
|
147
|
-
if array is None:
|
|
148
|
-
return
|
|
153
|
+
if array is None or len(array) == 0:
|
|
154
|
+
return all_users
|
|
149
155
|
facebook = self.facebook
|
|
150
156
|
if facebook is None:
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
157
|
+
# only filter user
|
|
158
|
+
for item in array:
|
|
159
|
+
if self.check_user(identifier=item):
|
|
160
|
+
all_users.add(item)
|
|
161
|
+
return all_users
|
|
162
|
+
# extract group members
|
|
154
163
|
for item in array:
|
|
155
164
|
if item.is_user:
|
|
156
|
-
|
|
165
|
+
if self.check_user(identifier=item):
|
|
166
|
+
all_users.add(item)
|
|
157
167
|
continue
|
|
158
168
|
assert item.is_group, 'group ID error: %s' % item
|
|
159
|
-
|
|
160
|
-
if
|
|
169
|
+
group_members = await facebook.get_members(identifier=item)
|
|
170
|
+
if group_members is None or len(group_members) == 0:
|
|
161
171
|
self.warning(msg='failed to get members for group: %s' % item)
|
|
162
|
-
|
|
163
|
-
|
|
172
|
+
continue
|
|
173
|
+
for member in group_members:
|
|
174
|
+
if self.check_user(identifier=member):
|
|
175
|
+
all_users.add(member)
|
|
164
176
|
return all_users
|
|
165
177
|
|
|
166
178
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|