Python 中 Unicode 正规化的边缘情况

Python 中 Unicode 正规化的边缘情况


很多 Python 开发者觉得:


unicodedata.normalize()


只是:


“把 Unicode 字符统一格式”


但实际上:


Unicode 正规化(Normalization)远比想象中复杂。


尤其:


用户名比较

搜索引擎

数据库存储

文件系统

URL

安全过滤

OCR

爬虫


里。


很多“看起来一样”的字符串:


实际上并不相等

一、最经典问题:视觉相同,但字符串不同


例如:


s1 = "é"

s2 = "é"


看起来完全一样。


但:


print(s1 == s2)


输出:


False


因为:


s1


是:


U+00E9

LATIN SMALL LETTER E WITH ACUTE


单个字符。


s2


实际上是:


U+0065  e

U+0301  COMBINING ACUTE ACCENT


也就是:


e + 重音组合符

二、正规化就是“统一表示方式”


Python 提供:


import unicodedata


然后:


unicodedata.normalize("NFC", s)


即可统一。


例如:


import unicodedata


s1 = "é"

s2 = "é"


print(

    unicodedata.normalize("NFC", s1)

    ==

    unicodedata.normalize("NFC", s2)

)


输出:


True

三、NFC 与 NFD 的差异


这是最容易混淆的地方。


NFC

Canonical Composition

规范组合


尽量合并字符。


例如:


e + ´

→ é

NFD

Canonical Decomposition

规范分解


尽量拆开。


例如:


é

→ e + ´

四、还有更危险的 NFKC/NFKD


很多人完全不知道:


兼容正规化


会:


改变字符语义


例如:


s = "①"


经过:


unicodedata.normalize("NFKC", s)


变成:


"1"

五、全角字符会被折叠


例如:


"ABC"


NFKC 后:


"ABC"


因此:


用户名系统

搜索系统

登录系统


如果没考虑:


全角/半角


就会出问题。


六、数学字符也会被破坏


例如:


"?"


这是:


MATHEMATICAL BOLD CAPITAL A


但:


unicodedata.normalize("NFKC", s)


后:


"A"


字体语义丢失。


七、某些“不同语言字符”看起来一样


例如:


拉丁字母 A

U+0041

西里尔字母 А

U+0410


视觉几乎一样。


但:


"A" == "А"


结果:


False


正规化:


normalize()


也不会统一。


因为:


它们语义不同

八、这会导致“同形异义攻击”


例如:


аррӏе.com


看起来像:


apple.com


但实际:


部分字符来自:


西里尔

希腊


这类攻击叫:


Homoglyph Attack


Unicode 正规化:


无法完全解决

九、Emoji 正规化更复杂


例如:


"?‍?‍?"


实际上是:


多个 emoji + ZWJ


组成。


其中:


ZWJ = Zero Width Joiner


如果错误正规化或切分:


家庭 emoji


可能被拆散。


十、Variation Selector 会让字符“看起来没变化”


例如:


"❤"


和:


"❤️"


看起来几乎一样。


但:


后者包含:


U+FE0F Variation Selector-16


用于:


emoji 风格显示


因此:


len("❤️")


可能是:


2


而不是 1。


十一、字符串长度可能正规化后变化


例如:


len("é")


可能:


1


但:


len(unicodedata.normalize("NFD", "é"))


变成:


2


这会影响:


截断

数据库存储

UI 对齐

字符限制

十二、文件系统正规化差异极坑

macOS


HFS+/APFS 常使用:


NFD-like


存文件名。


Linux


通常原样保存。


Windows


更接近:


NFC


因此:


同一个文件名


跨平台可能:


无法匹配

重复文件

git 冲突

十三、数据库唯一索引问题


例如:


用户注册:


José


另一个用户:


José


视觉一样。


但如果数据库:


不做正规化


可能:


允许重复注册

十四、正则表达式也会受影响


例如:


import re


re.match("é", "é")


可能失败。


因为:


底层 code point 不同


很多人误以为:


regex 会自动理解 Unicode 等价


实际上不会。


十五、排序问题


例如:


sorted(["é", "é"])


结果可能不稳定。


因为:


底层编码不同


搜索引擎和数据库通常会:


normalize

casefold

locale compare


组合处理。


十六、casefold 比 lower 更复杂


例如:


"ß".lower()


结果:


"ß"


但:


"ß".casefold()


结果:


"ss"


因此:


很多“Unicode 安全比较”实际上应该:


normalize + casefold


组合。


十七、推荐的安全比较方式


通常:


import unicodedata


def safe_equal(a, b):

    return (

        unicodedata.normalize("NFKC", a).casefold()

        ==

        unicodedata.normalize("NFKC", b).casefold()

    )


但:


即使这样也不能完全防御同形攻击。


十八、不要轻易使用 NFKC


很多系统:


盲目 NFKC


会:


丢失数学语义

破坏排版

改变字符含义

影响密码


例如密码:


?BC123


NFKC 后:


ABC123


安全性直接变化。


十九、密码系统尤其危险


很多网站会:


normalize(password)


导致:


用户输入的密码被修改


这其实并不总安全。


因为:


Unicode 等价

用户认为等价

二十、Python 自己内部也依赖 Unicode 正规化


例如:


Python 标识符:


变量名


会做:


NFKC normalization


因此:


某些看起来不同的变量名:


实际上会冲突

https://vk.com/topic-238939300_64170827 https://vk.com/topic-238939300_64171712 https://vk.com/topic-238939300_64172699 https://vk.com/topic-238939300_64173563 https://vk.com/topic-238939300_64174399 https://vk.com/topic-238939300_64175331 https://vk.com/topic-238939300_64176236 https://vk.com/topic-238939300_64177087 https://vk.com/topic-238939300_64177900 https://vk.com/topic-238939300_64178583 https://vk.com/topic-238939300_64179923 https://vk.com/topic-238939300_64180537 https://vk.com/topic-238939300_64181058 https://vk.com/topic-238939300_64181587 https://vk.com/topic-238939300_64182142 https://vk.com/topic-238939300_64183298 https://vk.com/topic-238939300_64183981 https://vk.com/topic-238939300_64184674 https://vk.com/topic-238939300_64185452 https://vk.com/topic-238939300_64186184 https://vk.com/topic-238939300_64186887 https://vk.com/topic-238939300_64187610 https://vk.com/topic-238939300_64188166 https://vk.com/topic-238939300_64188965 https://vk.com/topic-238939300_64189712 https://vk.com/topic-238939300_64190396 https://vk.com/topic-238939300_64190971 https://vk.com/topic-238939300_64192166 https://vk.com/topic-238939300_64192780 https://vk.com/topic-238939300_64193399 https://vk.com/topic-238939300_64195038 https://vk.com/topic-238939300_64195665 https://vk.com/topic-238939300_64196664 https://vk.com/topic-238939300_64197179 https://vk.com/topic-238939300_64198134 https://vk.com/topic-238939300_64198934 https://vk.com/topic-238939300_64199431 https://vk.com/topic-238939300_64200517 https://vk.com/topic-238939300_64201006 https://vk.com/topic-238939300_64201571 https://vk.com/topic-238939300_64202068 https://vk.com/topic-238939300_64202705 https://vk.com/topic-238939300_64203279 https://vk.com/topic-238939300_64203790 https://vk.com/topic-238939300_64204370 https://vk.com/topic-238939300_64204928 https://vk.com/topic-238939300_64205543 https://vk.com/topic-238939300_64206192 https://vk.com/topic-238939300_64206920 https://vk.com/topic-238939300_64209659 https://vk.com/topic-238939300_64210293 https://vk.com/topic-238939300_64210997 https://vk.com/topic-238939300_64211718 https://vk.com/topic-238939300_64212505 https://vk.com/topic-238939300_64213079 https://vk.com/topic-238939300_64213853 https://vk.com/topic-238939300_64214606 https://vk.com/topic-238939300_64215447 https://vk.com/topic-238939300_64216284 https://vk.com/topic-238939300_64217326 https://vk.com/topic-238939300_64218149 https://vk.com/topic-238939300_64219790 https://vk.com/topic-238939300_64220712 https://vk.com/topic-238939300_64221488 https://vk.com/topic-238939300_64222192 https://vk.com/topic-238939300_64222963 https://vk.com/topic-238939300_64223888 https://vk.com/topic-238939300_64224842 https://vk.com/topic-238939300_64226364 https://vk.com/topic-238939300_64227067 https://vk.com/topic-238939300_64227694 https://vk.com/topic-238939300_64229852 https://vk.com/topic-238939300_64230581 https://vk.com/topic-238939300_64231227 https://vk.com/topic-238939300_64231913 https://vk.com/topic-238939300_64232610 https://vk.com/topic-238939300_64234296 https://vk.com/topic-238939300_64234932 https://vk.com/topic-238939300_64235580 https://vk.com/topic-238939300_64236980 https://vk.com/topic-238939300_64238291 https://vk.com/topic-238939300_64238963 https://vk.com/topic-238939300_64240133 https://vk.com/topic-238939300_64242523 https://vk.com/topic-238939300_64243817 https://vk.com/topic-238939300_64244549 https://vk.com/topic-238939300_64245401 https://vk.com/topic-238939300_64248959 https://vk.com/topic-238939300_64254074 https://vk.com/topic-238939300_64254674 https://vk.com/topic-238939300_64256019 https://vk.com/topic-238939300_64257631 https://vk.com/topic-238939300_64259532 https://vk.com/topic-238939300_64260367 https://vk.com/topic-238939300_64261734 https://vk.com/topic-238939300_64264595 https://vk.com/topic-238939300_64265963 https://vk.com/topic-238939300_64266632 https://vk.com/topic-238939300_64271837 https://vk.com/topic-238939300_64274227 https://vk.com/topic-238939300_64275629 https://vk.com/topic-238939300_64279202 https://vk.com/topic-238939300_64281275 https://vk.com/topic-238939300_64282769 https://vk.com/topic-238939300_64284352 https://vk.com/topic-238939300_64285041 https://vk.com/topic-238939300_64285733 https://vk.com/topic-238939300_64286499 https://vk.com/topic-238939300_64287383 https://vk.com/topic-238939300_64289441 https://vk.com/topic-238939300_64295024 https://vk.com/topic-238939300_64298177 https://vk.com/topic-238939300_64299076 https://vk.com/topic-238939300_64300009 https://vk.com/topic-238939300_64301171 https://vk.com/topic-238939300_64302157 https://vk.com/topic-238939300_64304082 https://vk.com/topic-238939300_64310366 https://vk.com/topic-238939300_64311220 https://vk.com/topic-238939300_64313823 https://vk.com/topic-238939300_64314950 https://vk.com/topic-238939300_64316208 https://vk.com/topic-238939300_64316912 https://vk.com/topic-238939300_64317574 https://vk.com/topic-238939300_64318959 https://vk.com/topic-238939300_64321965 https://vk.com/topic-238939300_64322717 https://vk.com/topic-238939300_64324009 https://vk.com/topic-238939300_64325795 https://vk.com/topic-238939300_64326321 https://vk.com/topic-238939300_64326843 https://vk.com/topic-238939300_64327291 https://vk.com/topic-238939300_64328786 https://vk.com/topic-238939300_64329305 https://vk.com/topic-238939300_64329962 https://vk.com/topic-238939300_64330605 https://vk.com/topic-238939300_64333545 https://vk.com/topic-238939300_64334240 https://vk.com/topic-238939300_64417461 https://vk.com/topic-238939300_64418256 https://vk.com/topic-238939300_64419103 https://vk.com/topic-238939300_64419915 https://vk.com/topic-238939300_64420739 https://vk.com/topic-238939300_64421388 https://vk.com/topic-238939300_64421936 https://vk.com/topic-238939300_64422543 https://vk.com/topic-238939300_64423272 https://vk.com/topic-238939300_64424034 https://vk.com/topic-238939300_64424742 https://vk.com/topic-238939300_64425573 https://vk.com/topic-238939300_64426382 https://vk.com/topic-238939300_64427315 https://vk.com/topic-238939300_64428245 https://vk.com/topic-238939300_64429070 https://vk.com/topic-238939300_64429897 https://vk.com/topic-238939300_64430750 https://vk.com/topic-238939300_64431623 https://vk.com/topic-238939300_64432566 https://vk.com/topic-238939300_64433497 https://vk.com/topic-238939300_64434415 https://vk.com/topic-238939300_64435340 https://vk.com/topic-238939300_64436191 https://vk.com/topic-238939300_64436938 https://vk.com/topic-238939300_64437673 https://vk.com/topic-238939300_64438436 https://vk.com/topic-238939300_64439246 https://vk.com/topic-238939300_64440060 https://vk.com/topic-238939300_64440696 https://vk.com/topic-238939300_64441317 https://vk.com/topic-238939300_64442007 https://vk.com/topic-238939300_64442730 https://vk.com/topic-238939300_64443469 https://vk.com/topic-238939300_64444156 https://vk.com/topic-238939300_64444900 https://vk.com/topic-238939300_64445637 https://vk.com/topic-238939300_64446451 https://vk.com/topic-238939300_64447503 https://vk.com/topic-238939300_64448587 https://vk.com/topic-238939300_64449489 https://vk.com/topic-238939300_64450474 https://vk.com/topic-238939300_64451350 https://vk.com/topic-238939300_64452374 https://vk.com/topic-238939300_64453297 https://vk.com/topic-238939300_64454326 https://vk.com/topic-238939300_64455392 https://vk.com/topic-238939300_64456238 https://vk.com/topic-238939300_64456961 https://vk.com/topic-238939300_64457716 https://vk.com/topic-238939300_64458410 https://vk.com/topic-238939300_64459138 https://vk.com/topic-238939300_64460100 https://vk.com/topic-238939300_64461349 https://vk.com/topic-238939300_64462437 https://vk.com/topic-238939300_64463575 https://vk.com/topic-238939300_64464613 https://vk.com/topic-238939300_64465494 https://vk.com/topic-238939300_64466274 https://vk.com/topic-238939300_64467110 https://vk.com/topic-238939300_64467985 https://vk.com/topic-238939300_64468956 https://vk.com/topic-238939300_64469941 https://vk.com/topic-238939300_64470777 https://vk.com/topic-238939300_64471789 https://vk.com/topic-238939300_64472703 https://vk.com/topic-238939300_64473538 https://vk.com/topic-238939300_64474360 https://vk.com/topic-238939300_64475180 https://vk.com/topic-238939300_64475910 https://vk.com/topic-238939300_64476837 https://vk.com/topic-238939300_64477724 https://vk.com/topic-238939300_64478550 https://vk.com/topic-238939300_64479507 https://vk.com/topic-238939300_64480539 https://vk.com/topic-238939300_64481504 https://vk.com/topic-238939300_64482410 https://vk.com/topic-238939300_64483184 https://vk.com/topic-238939300_64484004 https://vk.com/topic-238939300_64484871 https://vk.com/topic-238939300_64485669 https://vk.com/topic-238939300_64486394 https://vk.com/topic-238939300_64487076 https://vk.com/topic-238939300_64487749 https://vk.com/topic-238939300_64488564 https://vk.com/topic-238939300_64489320 https://vk.com/topic-238939300_64490103 https://vk.com/topic-238939300_64491027 https://vk.com/topic-238939300_64491940 https://vk.com/topic-238939300_64492738 https://vk.com/topic-238939300_64493791 https://vk.com/topic-238939300_64494669 https://vk.com/topic-238939300_64495467 https://vk.com/topic-238939300_64496303 https://vk.com/topic-238939300_64497185 https://vk.com/topic-238939300_64498060 https://vk.com/topic-238939300_64498801 https://vk.com/topic-238939300_64499414 https://vk.com/topic-238939300_64500113 https://vk.com/topic-238939300_64500701 https://vk.com/topic-238939300_64501381 https://vk.com/topic-238939300_64501998 https://vk.com/topic-238939300_64502839 https://vk.com/topic-238939300_64503745 https://vk.com/topic-238939300_64504464 https://vk.com/topic-238939300_64505228 https://vk.com/topic-238939300_64506064 https://vk.com/topic-238939300_64506955 https://vk.com/topic-238939300_64507786 https://vk.com/topic-238939300_64508504 https://vk.com/topic-238939300_64509343 https://vk.com/topic-238939300_64510081 https://vk.com/topic-238939300_64510959 https://vk.com/topic-238939300_64511634 https://vk.com/topic-238939300_64512340 https://vk.com/topic-238939300_64512952 https://vk.com/topic-238939300_64513653 https://vk.com/topic-238939300_64514339 https://vk.com/topic-238939300_64515106 https://vk.com/topic-238939300_64515889 https://vk.com/topic-238939300_64516599 https://vk.com/topic-238939300_64517355 https://vk.com/topic-238939300_64518178 https://vk.com/topic-238939300_64518864 https://vk.com/topic-238939300_64519705 https://vk.com/topic-238939300_64520585 https://vk.com/topic-238939300_64521356 https://vk.com/topic-238939300_64521970 https://vk.com/topic-238939300_64522519 https://vk.com/topic-238939300_64523095 https://vk.com/topic-238939300_64523922 https://vk.com/topic-238939300_64524693 https://vk.com/topic-238939300_64525323 https://vk.com/topic-238939300_64526013 https://vk.com/topic-238939300_64526783 https://vk.com/topic-238939300_64527442 https://vk.com/topic-238939300_64528327 https://vk.com/topic-238939300_64529108 https://vk.com/topic-238939300_64529879 https://vk.com/topic-238939300_64530818 https://vk.com/topic-238939300_64531405 https://vk.com/topic-238939300_64532041 https://vk.com/topic-238939300_64532677 https://vk.com/topic-238939300_64533327 https://vk.com/topic-238939300_64533962 https://vk.com/topic-238939300_64534571 https://vk.com/topic-238939300_64535155 https://vk.com/topic-238939300_64535849 https://vk.com/topic-238939300_64536474 https://vk.com/topic-238939300_64536970 https://vk.com/topic-238939300_64537553 https://vk.com/topic-238939300_64538228 https://vk.com/topic-238939300_64538922 https://vk.com/topic-238939300_64539676 https://vk.com/topic-238939300_64540348 https://vk.com/topic-238939300_64540863 https://vk.com/topic-238939300_64541476 https://vk.com/topic-238939300_64542130 https://vk.com/topic-238939300_64542668 https://vk.com/topic-238939300_64543133 https://vk.com/topic-238939300_64543601 https://vk.com/topic-238939300_64544025 https://vk.com/topic-238939300_64544469 https://vk.com/topic-238939300_64545047 https://vk.com/topic-238939300_64545522 https://vk.com/topic-238939300_64545958 https://vk.com/topic-238939300_64546389 https://vk.com/topic-238939300_64546749 https://vk.com/topic-238939300_64547070 https://vk.com/topic-238939300_64547397 https://vk.com/topic-238939300_64547841 https://vk.com/topic-238939300_64548278 https://vk.com/topic-238939300_64548671 https://vk.com/topic-238939300_64549142 https://vk.com/topic-238939300_64549717 https://vk.com/topic-238939300_64550249 https://vk.com/topic-238939300_64550828 https://vk.com/topic-238939300_64551306 https://vk.com/topic-238939300_64551821 https://vk.com/topic-238939300_64552345 https://vk.com/topic-238939300_64552829 https://vk.com/topic-238939300_64553273 https://vk.com/topic-238939300_64553704 https://vk.com/topic-238939300_64554261 https://vk.com/topic-238939300_64554867 https://vk.com/topic-238939300_64555396 https://vk.com/topic-238939300_64555796 https://vk.com/topic-238939300_64556190 https://vk.com/topic-238939300_64556562 https://vk.com/topic-238939300_64556940 https://vk.com/topic-238939300_64557526 https://vk.com/topic-238939300_64558157 https://vk.com/topic-238939300_64558853 https://vk.com/topic-238939300_64559589 https://vk.com/topic-238939300_64560370 https://vk.com/topic-238939300_64560834 https://vk.com/topic-238939300_64561339 https://vk.com/topic-238939300_64561786 https://vk.com/topic-238939300_64562405 https://vk.com/topic-238939300_64562947 https://vk.com/topic-238939300_64563600 https://vk.com/topic-238939300_64564219 https://vk.com/topic-238939300_64564700 https://vk.com/topic-238939300_64565239 https://vk.com/topic-238939300_64565736 https://vk.com/topic-238939300_64566173 https://vk.com/topic-238939300_64566676 https://vk.com/topic-238939300_64567135 https://vk.com/topic-238939300_64567608 https://vk.com/topic-238939300_64568006 https://vk.com/topic-238939300_64568387 https://vk.com/topic-238939300_64568848 https://vk.com/topic-238939300_64569343 https://vk.com/topic-238939300_64569902 https://vk.com/topic-238939300_64570567 https://vk.com/topic-238939300_64571159 https://vk.com/topic-238939300_64571729 https://vk.com/topic-238939300_64572223 https://vk.com/topic-238939300_64572671 https://vk.com/topic-238939300_64573021 https://vk.com/topic-238939300_64573506 https://vk.com/topic-238939300_64573962 https://vk.com/topic-238939300_64574509 https://vk.com/topic-238939300_64575011 https://vk.com/topic-238939300_64575467 https://vk.com/topic-238939300_64575897 https://vk.com/topic-238939300_64576381 https://vk.com/topic-238939300_64576882 https://vk.com/topic-238939300_64577326 https://vk.com/topic-238939300_64577833 https://vk.com/topic-238939300_64578382 https://vk.com/topic-238939300_64578851 https://vk.com/topic-238939300_64579337 https://vk.com/topic-238939300_64579896 https://vk.com/topic-238939300_64580459 https://vk.com/topic-238939300_64580945 https://vk.com/topic-238939300_64581318 https://vk.com/topic-238939300_64581665 https://vk.com/topic-238939300_64582012 https://vk.com/topic-238939300_64582402 https://vk.com/topic-238939300_64582834 https://vk.com/topic-238939300_64583269 https://vk.com/topic-238939300_64583695 https://vk.com/topic-238939300_64584170 https://vk.com/topic-238939300_64584587 https://vk.com/topic-239052366_63891119 https://vk.com/topic-239052366_63891810 https://vk.com/topic-239052366_63892772 https://vk.com/topic-239052366_63893611 https://vk.com/topic-239052366_63894296 https://vk.com/topic-239052366_63895172 https://vk.com/topic-239052366_63896003 https://vk.com/topic-239052366_63896898 https://vk.com/topic-239052366_63897823 https://vk.com/topic-239052366_63898705 https://vk.com/topic-239052366_63899637 https://vk.com/topic-239052366_63900371 https://vk.com/topic-239052366_63901042 https://vk.com/topic-239052366_63902034 https://vk.com/topic-239052366_63903006 https://vk.com/topic-239052366_63903900 https://vk.com/topic-239052366_63904691 https://vk.com/topic-239052366_63905448 https://vk.com/topic-239052366_63906117 https://vk.com/topic-239052366_63906772 https://vk.com/topic-239052366_63907429 https://vk.com/topic-239052366_63908187 https://vk.com/topic-239052366_63908901 https://vk.com/topic-239052366_63909533 https://vk.com/topic-239052366_63910207 https://vk.com/topic-239052366_63911040 https://vk.com/topic-239052366_63911793 https://vk.com/topic-239052366_63912468 https://vk.com/topic-239052366_63913224 https://vk.com/topic-239052366_63913932 https://vk.com/topic-239052366_63914547 https://vk.com/topic-239052366_63915336 https://vk.com/topic-239052366_63915888 https://vk.com/topic-239052366_63916524 https://vk.com/topic-239052366_63917064 https://vk.com/topic-239052366_63917645 https://vk.com/topic-239052366_63918231 https://vk.com/topic-239052366_63918932 https://vk.com/topic-239052366_63919721 https://vk.com/topic-239052366_63920357 https://vk.com/topic-239052366_63920948 https://vk.com/topic-239052366_63921651 https://vk.com/topic-239052366_63922443 https://vk.com/topic-239052366_63923122 https://vk.com/topic-239052366_63923676 https://vk.com/topic-239052366_63924226 https://vk.com/topic-239052366_63924821 https://vk.com/topic-239052366_63925582 https://vk.com/topic-239052366_63926479 https://vk.com/topic-239052366_63927400 https://vk.com/topic-239052366_63928205 https://vk.com/topic-239052366_63929045 https://vk.com/topic-239052366_63929767 https://vk.com/topic-239052366_63930468 https://vk.com/topic-239052366_63931244 https://vk.com/topic-239052366_63931977 https://vk.com/topic-239052366_63932627 https://vk.com/topic-239052366_63933291 https://vk.com/topic-239052366_63933892 https://vk.com/topic-239052366_63934360 https://vk.com/topic-239052366_63934866 https://vk.com/topic-239052366_63935540 https://vk.com/topic-239052366_63936128 https://vk.com/topic-239052366_63936763 https://vk.com/topic-239052366_63937498 https://vk.com/topic-239052366_63938289 https://vk.com/topic-239052366_63939100 https://vk.com/topic-239052366_63939823 https://vk.com/topic-239052366_63940483 https://vk.com/topic-239052366_63941145 https://vk.com/topic-239052366_63941777 https://vk.com/topic-239052366_63942245 https://vk.com/topic-239052366_63942754 https://vk.com/topic-239052366_63943210 https://vk.com/topic-239052366_63943784 https://vk.com/topic-239052366_63944391 https://vk.com/topic-239052366_63944987 https://vk.com/topic-239052366_63945694 https://vk.com/topic-239052366_63946245 https://vk.com/topic-239052366_63947873 https://vk.com/topic-239052366_63948364 https://vk.com/topic-239052366_63948880 https://vk.com/topic-239052366_63949536 https://vk.com/topic-239052366_63950155 https://vk.com/topic-239052366_63950867 https://vk.com/topic-239052366_63951579 https://vk.com/topic-239052366_63952309 https://vk.com/topic-239052366_63952983 https://vk.com/topic-239052366_63953740 https://vk.com/topic-239052366_63954506 https://vk.com/topic-239052366_63955119 https://vk.com/topic-239052366_63955686 https://vk.com/topic-239052366_63956291 https://vk.com/topic-239052366_63956818 https://vk.com/topic-239052366_63957651 https://vk.com/topic-239052366_63958346 https://vk.com/topic-239052366_63959129 https://vk.com/topic-239052366_63959871 https://vk.com/topic-239052366_63960614 https://vk.com/topic-239052366_63961522 https://vk.com/topic-239052366_63962712 https://vk.com/topic-239052366_63963965 https://vk.com/topic-239052366_63965186 https://vk.com/topic-239052366_63966368 https://vk.com/topic-239052366_63967245 https://vk.com/topic-239052366_63968081 https://vk.com/topic-239052366_63968763 https://vk.com/topic-239052366_63969624 https://vk.com/topic-239052366_63970438 https://vk.com/topic-239052366_63971210 https://vk.com/topic-239052366_63971803 https://vk.com/topic-239052366_63972301 https://vk.com/topic-239052366_63972931 https://vk.com/topic-239052366_63973578 https://vk.com/topic-239052366_63974206 https://vk.com/topic-239052366_63974953 https://vk.com/topic-239052366_63975704 https://vk.com/topic-239052366_63976316 https://vk.com/topic-239052366_63976932 https://vk.com/topic-239052366_63977467 https://vk.com/topic-239052366_63977988 https://vk.com/topic-239052366_63978543 https://vk.com/topic-239052366_63979133 https://vk.com/topic-239052366_63979806

请使用浏览器的分享功能分享到微信等