diff --git a/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-css/size-your-images.md b/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-css/size-your-images.md
index a0c193a796..6dcea25c66 100644
--- a/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-css/size-your-images.md
+++ b/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-css/size-your-images.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9acdf08812
title: 調整圖片的大小
challengeType: 0
-videoUrl: 'https://scrimba.com/c/cM9MmCP'
forumTopicId: 18282
dashedName: size-your-images
---
diff --git a/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md b/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
index 61fc7c4557..47c6216a90 100644
--- a/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
+++ b/curriculum/challenges/chinese-traditional/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9aedf08812
title: 給網站添加圖片
challengeType: 0
-videoUrl: 'https://scrimba.com/p/pVMPUv/c8EbJf2'
forumTopicId: 16640
dashedName: add-images-to-your-website
---
diff --git a/curriculum/challenges/chinese-traditional/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md b/curriculum/challenges/chinese-traditional/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
index 6ffb1fb79a..30d0d64397 100644
--- a/curriculum/challenges/chinese-traditional/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
+++ b/curriculum/challenges/chinese-traditional/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
@@ -2,7 +2,6 @@
id: 567af2437cbaa8c51670a16c
title: 測試對象的屬性
challengeType: 1
-videoUrl: 'https://scrimba.com/c/c6Wz4ySr'
forumTopicId: 18324
dashedName: testing-objects-for-properties
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
index 7adb183433..e6ca1518b3 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05b
title: 編寫你自己的函數
challengeType: 11
videoId: nLDychdBwUg
+bilibiliIds:
+ aid: 249487483
+ bvid: BV1Fv411J7bS
+ cid: 376340281
dashedName: build-your-own-functions
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
index f78a13d426..5405d9d9ed 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06d
title: Tuples 的比較和排序
challengeType: 11
videoId: dZXzBXUxxCs
+bilibiliIds:
+ aid: 931886163
+ bvid: BV1HM4y1T7TK
+ cid: 376533673
dashedName: comparing-and-sorting-tuples
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
index a0bfe74568..534565453b 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f058
title: 根據條件執行
challengeType: 11
videoId: gz_IfIsZQtc
+bilibiliIds:
+ aid: 206949935
+ bvid: BV1Jh411z7bY
+ cid: 376337035
dashedName: conditional-execution
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
index a23874c248..22ce778b6e 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f097
title: '數據可視化:郵件列表'
challengeType: 11
videoId: RYdW660KkaQ
+bilibiliIds:
+ aid: 334465586
+ bvid: BV18w411R7dD
+ cid: 377545473
dashedName: data-visualization-mailing-lists
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
index 415024119f..0173ae65db 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f096
title: '數據可視化:頁面排名'
challengeType: 11
videoId: 6-w_qIUwaxU
+bilibiliIds:
+ aid: 376950472
+ bvid: BV1ho4y1Q72u
+ cid: 377544599
dashedName: data-visualization-page-rank
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
index 5d6085e070..e4337d2cfb 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f069
title: 字典和循環
challengeType: 11
videoId: EEmekKiKG70
+bilibiliIds:
+ aid: 589401038
+ bvid: BV1eq4y1X7xU
+ cid: 376387132
dashedName: dictionaries-and-loops
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
index c6870e697e..8dbc1fa8ea 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f068
title: '字典:常見應用'
challengeType: 11
videoId: f17xPfIXct0
+bilibiliIds:
+ aid: 805747023
+ bvid: BV1v34y1D7ug
+ cid: 414168867
dashedName: dictionaries-common-applications
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
index d5dd01b992..7abcb0ab6c 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f063
title: 文件作爲序列
challengeType: 11
videoId: cIA0EokbaHE
+bilibiliIds:
+ aid: 974380307
+ bvid: BV1p44y1m7br
+ cid: 376388846
dashedName: files-as-a-sequence
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
index 5d0b1114be..607b6415b9 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f057
title: 中間表達式
challengeType: 11
videoId: dKgUaIa5ATg
+bilibiliIds:
+ aid: 334428894
+ bvid: BV1uw411R7gH
+ cid: 376318468
dashedName: intermediate-expressions
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
index e2bf3a4d93..606b9bf5ab 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f061
title: 中間字符串
challengeType: 11
videoId: KgT_fYLXnyk
+bilibiliIds:
+ aid: 291983121
+ bvid: BV1Zf4y157yG
+ cid: 376394116
dashedName: intermediate-strings
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
index 9e996b9915..d3f0f03928 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
@@ -3,6 +3,10 @@ id: 5e6a54c358d3af90110a60a3
title: '導言:Python 的元素'
challengeType: 11
videoId: aRY_xjL35v0
+bilibiliIds:
+ aid: 674420725
+ bvid: BV1MU4y1H7Lj
+ cid: 376315889
dashedName: introduction-elements-of-python
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
index 93b6a4c797..de7430c7d5 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
@@ -3,6 +3,10 @@ id: 5e6a54af58d3af90110a60a1
title: '導言:硬件架構'
challengeType: 11
videoId: H6qtjRTfSog
+bilibiliIds:
+ aid: 206977572
+ bvid: BV1zh411z7Ak
+ cid: 376199262
dashedName: introduction-hardware-architecture
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
index 2e35dbd982..84b3339ccb 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
@@ -3,6 +3,10 @@ id: 5e6a54ba58d3af90110a60a2
title: '導言:Python 這門編程語言'
challengeType: 11
videoId: 0QeGbZNS_bY
+bilibiliIds:
+ aid: 674404602
+ bvid: BV1GU4y1H7vB
+ cid: 376315625
dashedName: introduction-python-as-a-language
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
index 47f1579832..00588e5b5f 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05d
title: '迭代:定義循環'
challengeType: 11
videoId: hiRTRAqNlpE
+bilibiliIds:
+ aid: 291987032
+ bvid: BV1ff4y157Q3
+ cid: 376385255
dashedName: iterations-definite-loops
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
index 39768067d3..4d884d3bfb 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05e
title: '迭代:循環成語'
challengeType: 11
videoId: AelGAcoMXbI
+bilibiliIds:
+ aid: 334491369
+ bvid: BV1tw411R7Mm
+ cid: 376530765
dashedName: iterations-loop-idioms
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
index cfece4edfa..8f80966ed5 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05f
title: '迭代:更多模式'
challengeType: 11
videoId: 9Wtqo6vha1M
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: iterations-more-patterns
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
index 22bc651702..8a88edaf3c 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05c
title: 循環和迭代
challengeType: 11
videoId: dLA-szNRnUY
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: loops-and-iterations
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
index fba6176967..26a506ad38 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08b
title: 建立關係數據庫
challengeType: 11
videoId: MQ5z4bdF92U
+bilibiliIds:
+ aid: 249380678
+ bvid: BV1vv411E76L
+ cid: 377531786
dashedName: make-a-relational-database
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
index f5dafcfa2f..6d492b1470 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f059
title: 更多條件結構
challengeType: 11
videoId: HdL82tAZR20
+bilibiliIds:
+ aid: 631930118
+ bvid: BV1Nb4y1r7z2
+ cid: 376337449
dashedName: more-conditional-structures
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
index 9cd8228b3d..40bae7aca4 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f072
title: 網絡協議
challengeType: 11
videoId: c6vZGescaSc
+bilibiliIds:
+ aid: 931950996
+ bvid: BV1cM4y1N7K6
+ cid: 376388317
dashedName: networking-protocol
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
index 3aa47daf5e..6054557c8b 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f074
title: '聯網:文本處理'
challengeType: 11
videoId: Pv_pJgVu8WI
+bilibiliIds:
+ aid: 804442498
+ bvid: BV16y4y1j7WW
+ cid: 377329124
dashedName: networking-text-processing
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
index a446f10418..ad3c1fa68e 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f075
title: '網絡:在 Python 中使用 urllib'
challengeType: 11
videoId: 7lFM1T_CxBs
+bilibiliIds:
+ aid: 546908270
+ bvid: BV1Xq4y1H7e6
+ cid: 377331524
dashedName: networking-using-urllib-in-python
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
index 9d2e7b6807..a140c9b601 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f076
title: '網絡:使用 Python 進行 Web 爬取'
challengeType: 11
videoId: Uyioq2q4cEg
+bilibiliIds:
+ aid: 674382625
+ bvid: BV1oU4y1n7zQ
+ cid: 377331774
dashedName: networking-web-scraping-with-python
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
index ba5ab920d8..be1652018d 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f071
title: 用 Python 聯網
challengeType: 11
videoId: _kJvneKVdNM
+bilibiliIds:
+ aid: 419494612
+ bvid: BV1r341167jT
+ cid: 376385858
dashedName: networking-with-python
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
index dbe154aaed..be6b702b76 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f073
title: '聯網:編寫一個 Web 瀏覽器'
challengeType: 11
videoId: zjyT9DaAjx4
+bilibiliIds:
+ aid: 761908574
+ bvid: BV1j64y1x7wx
+ cid: 377319579
dashedName: networking-write-a-web-browser
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
index 6ad6f85aaa..3a3f1a0ddc 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f087
title: 對象的生命週期
challengeType: 11
videoId: p1r3h_AMMIM
+bilibiliIds:
+ aid: 461998717
+ bvid: BV1JL411n7Hr
+ cid: 377529681
dashedName: object-lifecycle
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
index 80f7d6148b..0d949f7ee4 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f086
title: '對象:一個示例類'
challengeType: 11
videoId: FiABKEuaSJ8
+bilibiliIds:
+ aid: 589451777
+ bvid: BV1rq4y1X7TG
+ cid: 377523194
dashedName: objects-a-sample-class
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
index c1bee385e5..1e426f4a46 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f088
title: '對象:繼承'
challengeType: 11
videoId: FBL3alYrxRM
+bilibiliIds:
+ aid: 631990691
+ bvid: BV1sb4y1r7GF
+ cid: 377529901
dashedName: objects-inheritance
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
index 89418c9c1d..db5073b264 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f067
title: Python 字典
challengeType: 11
videoId: dnzvfimrRMg
+bilibiliIds:
+ aid: 631893305
+ bvid: BV19b4y167kj
+ cid: 376386176
dashedName: python-dictionaries
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-functions.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-functions.md
index 1d5f1cefcb..3d96e3f9d9 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-functions.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05a
title: Python 函數
challengeType: 11
videoId: 3JGF-n3tDPU
+bilibiliIds:
+ aid: 631881917
+ bvid: BV1Xb4y167P4
+ cid: 376337920
dashedName: python-functions
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-lists.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-lists.md
index f43ab493dc..95515a4af1 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-lists.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f064
title: Python 列表
challengeType: 11
videoId: Y0cvfDpYC_c
+bilibiliIds:
+ aid: 249460305
+ bvid: BV1Dv411E7Uj
+ cid: 376532993
dashedName: python-lists
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-objects.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-objects.md
index 0061352167..2af6724ba6 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-objects.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/python-objects.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f085
title: Python 對象
challengeType: 11
videoId: uJxGeTYy0us
+bilibiliIds:
+ aid: 889496260
+ bvid: BV1ZP4y1s7G6
+ cid: 377522762
dashedName: python-objects
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/reading-files.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/reading-files.md
index c9959fee1c..3ec4fff47b 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/reading-files.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/reading-files.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f062
title: 閱讀文件中
challengeType: 11
videoId: Fo1tW09KIwo
+bilibiliIds:
+ aid: 334439927
+ bvid: BV1pw411R7UK
+ cid: 376532076
dashedName: reading-files
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
index 94b6f67da6..6e7aeb131c 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06f
title: '正則表達式:匹配和提取數據'
challengeType: 11
videoId: LaCZnTbQGkE
+bilibiliIds:
+ aid: 975629041
+ bvid: BV1i44y1b7hE
+ cid: 414167130
dashedName: regular-expressions-matching-and-extracting-data
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
index ca34c2d16b..17719ddfdd 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f070
title: '正則表達式: 實用應用'
challengeType: 11
videoId: xCjFU9G6x48
+bilibiliIds:
+ aid: 546924659
+ bvid: BV1mq4y1H7rZ
+ cid: 376386493
dashedName: regular-expressions-practical-applications
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
index 34a7991568..5a69f4743d 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06e
title: 正則表達式
challengeType: 11
videoId: Yud_COr6pZo
+bilibiliIds:
+ aid: 759422542
+ bvid: BV1W64y167YD
+ cid: 376387549
dashedName: regular-expressions
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
index 2b169db7ea..fb4f6f20f8 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08c
title: 關係數據庫設計
challengeType: 11
videoId: AqdfbrpkbHk
+bilibiliIds:
+ aid: 504388066
+ bvid: BV1Qg411j742
+ cid: 377532216
dashedName: relational-database-design
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
index 9744e2adde..43d896fd08 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08a
title: 關係數據庫和 SQLite
challengeType: 11
videoId: QlNod5-kFpA
+bilibiliIds:
+ aid: 249449958
+ bvid: BV12v411E74H
+ cid: 377530805
dashedName: relational-databases-and-sqlite
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
index 3d61106de9..dfb268f3d9 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08f
title: '關係數據庫:聯接操作'
challengeType: 11
videoId: jvDw3D9GKac
+bilibiliIds:
+ aid: 804461215
+ bvid: BV1Ry4y1j7tv
+ cid: 377542880
dashedName: relational-databases-join-operation
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
index 97a24561cc..3ecdc5d213 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
@@ -3,6 +3,10 @@ id: 5e7b9f190b6c005b0e76f090
title: '關係型數據庫:多對多關係'
challengeType: 11
videoId: z-SBYcvEQOc
+bilibiliIds:
+ aid: 291965127
+ bvid: BV1Af4y1L7BK
+ cid: 377543409
dashedName: relational-databases-many-to-many-relationships
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
index d53f9d41f9..67ad950fb3 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08e
title: '關係型數據庫:關係的建立'
challengeType: 11
videoId: CSbqczsHVnc
+bilibiliIds:
+ aid: 376996473
+ bvid: BV1jo4y1S7VY
+ cid: 377532966
dashedName: relational-databases-relationship-building
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
index 86c77d7588..8917f71781 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08d
title: 在關係型數據庫中表示關係
challengeType: 11
videoId: '-orenCNdC2Q'
+bilibiliIds:
+ aid: 931953070
+ bvid: BV1FM4y1N7hc
+ cid: 377532529
dashedName: representing-relationships-in-a-relational-database
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
index 2b6716c000..81608d7a27 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f066
title: 字符串和列表
challengeType: 11
videoId: lxcFa7ldCi0
+bilibiliIds:
+ aid: 804401443
+ bvid: BV1By4y1j7F9
+ cid: 376385517
dashedName: strings-and-lists
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
index 39dcfffa10..5efedb9fb0 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f060
title: Python 字符串
challengeType: 11
videoId: LYZj207fKpQ
+bilibiliIds:
+ aid: 504434218
+ bvid: BV1Lg41177s8
+ cid: 376531802
dashedName: strings-in-python
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
index 96de9eaab6..79d4a3db4e 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f06c
title: 元組集合
challengeType: 11
videoId: 3Lxpladfh2k
+bilibiliIds:
+ aid: 334468209
+ bvid: BV1aw411R77G
+ cid: 376533308
dashedName: the-tuples-collection
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/using-web-services.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
index 7f3c477780..2cfb03665e 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07a
title: 使用網絡服務
challengeType: 11
videoId: oNl1OVDPGKE
+bilibiliIds:
+ aid: 759406136
+ bvid: BV1b64y16746
+ cid: 377332189
dashedName: using-web-services
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
index d18b90c2d3..d2bfb4d0f7 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f056
title: '變量、表達式和語句'
challengeType: 11
videoId: nELR-uyyrok
+bilibiliIds:
+ aid: 419396811
+ bvid: BV1iV411p7Mn
+ cid: 376318116
dashedName: variables-expressions-and-statements
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
index cd714d68ca..e70f11c718 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f690b6c005b0e76f095
title: 使用 Python 可視化數據
challengeType: 11
videoId: e3lydkH0prw
+bilibiliIds:
+ aid: 291996462
+ bvid: BV15f4y1L7jH
+ cid: 377544192
dashedName: visualizing-data-with-python
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
index 461a09acf9..3651be8daf 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f080
title: 'Web 服務:API 速率限制和安全性'
challengeType: 11
videoId: pI-g0lI8ngs
+bilibiliIds:
+ aid: 249456172
+ bvid: BV1Sv411E7qa
+ cid: 377336269
dashedName: web-services-api-rate-limiting-and-security
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
index a4ea2e1dd8..7f3096da63 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f07f
title: 'Web 服務:API'
challengeType: 11
videoId: oUNn1psfBJg
+bilibiliIds:
+ aid: 589451017
+ bvid: BV1zq4y1X7A9
+ cid: 377336011
dashedName: web-services-apis
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-json.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
index eaac841551..0054962c8e 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07d
title: 'Web 服務:JSON'
challengeType: 11
videoId: ZJE-U56BppM
+bilibiliIds:
+ aid: 419491911
+ bvid: BV1r3411672w
+ cid: 377332928
dashedName: web-services-json
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
index 97cbeb8ef7..6717dba64a 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07e
title: 'Web 服務:面向服務的方法'
challengeType: 11
videoId: muerlsCHExI
+bilibiliIds:
+ aid: 846899335
+ bvid: BV1E54y1J7oz
+ cid: 377333277
dashedName: web-services-service-oriented-approach
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
index 3cc7408660..24369bb198 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07c
title: 'Web 服務:XML 模式'
challengeType: 11
videoId: yWU9kTxW-nc
+bilibiliIds:
+ aid: 631951466
+ bvid: BV1Vb4y1r7m7
+ cid: 377332603
dashedName: web-services-xml-schema
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
index 850dcbf41e..1a4eaa6504 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07b
title: 'Web 服務:XML'
challengeType: 11
videoId: _pZ0srbg7So
+bilibiliIds:
+ aid: 761920032
+ bvid: BV1n64y1x7KW
+ cid: 377332379
dashedName: web-services-xml
---
diff --git a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
index 42ec4c2660..8dc15110f7 100644
--- a/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
+++ b/curriculum/challenges/chinese-traditional/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f065
title: 使用列表
challengeType: 11
videoId: lCnHfTHkhbE
+bilibiliIds:
+ aid: 376965958
+ bvid: BV1No4y1S7oi
+ cid: 376387989
dashedName: working-with-lists
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
index ef6dabf07f..1b01fe947d 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14d
title: 數據分析 案例 A
challengeType: 11
videoId: nVAaxZ34khk
+bilibiliIds:
+ aid: 590571151
+ bvid: BV1sq4y1f7gr
+ cid: 409002372
dashedName: data-analysis-example-a
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
index d8df41fe7e..084feb4fd0 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14e
title: 數據分析 案例 B
challengeType: 11
videoId: 0kJz0q0pvgQ
+bilibiliIds:
+ aid: 505593432
+ bvid: BV1kg411c7M6
+ cid: 409003530
dashedName: data-analysis-example-b
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
index 67612d0ad2..4cbd40d2ce 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c160
title: 數據清理和可視化
challengeType: 11
videoId: mHjxzFS5_Z0
+bilibiliIds:
+ aid: 933107558
+ bvid: BV1KM4y137Ny
+ cid: 409019632
dashedName: data-cleaning-and-visualizations
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
index 1f264a2a91..5cc9fdb931 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15f
title: 數據 清理重複項
challengeType: 11
videoId: kj7QqjXhH6A
+bilibiliIds:
+ aid: 675611672
+ bvid: BV1VU4y1A7tu
+ cid: 409019368
dashedName: data-cleaning-duplicates
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
index 2489fa2846..bcea842cb4 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15d
title: 數據清理簡介
challengeType: 11
videoId: ovYNhnltVxY
+bilibiliIds:
+ aid: 250574398
+ bvid: BV1Pv411A7GN
+ cid: 409018611
dashedName: data-cleaning-introduction
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
index e812e9b46f..f5a11c481f 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15e
title: DataFrames 中的數據清理
challengeType: 11
videoId: sTMN_pdI6S0
+bilibiliIds:
+ aid: 505597026
+ bvid: BV1Yg411c7bx
+ cid: 409018948
dashedName: data-cleaning-with-dataframes
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
index 17a7ce1cab..4168c6b6a8 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14f
title: 如何使用 Jupyter Notebook
challengeType: 11
videoId: h8caJq2Bb9w
+bilibiliIds:
+ aid: 293035919
+ bvid: BV1Hf4y1n7qr
+ cid: 409002965
dashedName: how-to-use-jupyter-notebooks-intro
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
index f9bbcf469a..2d90bd0490 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14c
title: 數據分析簡介
challengeType: 11
videoId: VJrP2FUzKP0
+bilibiliIds:
+ aid: 378034466
+ bvid: BV19f4y1c7nu
+ cid: 409001487
dashedName: introduction-to-data-analysis
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
index f5913da1bb..76d13f6fe0 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c150
title: Jupyter Notebooks 單元格
challengeType: 11
videoId: 5PPegAs9aLA
+bilibiliIds:
+ aid: 420510493
+ bvid: BV19341117Hq
+ cid: 409003280
dashedName: jupyter-notebooks-cells
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
index 0ddb58592c..226863db95 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c151
title: 在 Jupyter Notebooks 中導入和導出數據
challengeType: 11
videoId: k1msxD3JIxE
+bilibiliIds:
+ aid: 975540688
+ bvid: BV1n44y1b7Gi
+ cid: 409006337
dashedName: jupyter-notebooks-importing-and-exporting-data
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
index 5e097f7477..ae1074b648 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c157
title: Numpy 代數和大小
challengeType: 11
videoId: XAT97YLOKD8
+bilibiliIds:
+ aid: 250621433
+ bvid: BV1hv41137uM
+ cid: 409013128
dashedName: numpy-algebra-and-size
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
index 61b5a1bdbf..8cc84abc03 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c154
title: Numpy 數組
challengeType: 11
videoId: VDYVFHBL1AM
+bilibiliIds:
+ aid: 890607366
+ bvid: BV1zP4y1h7FR
+ cid: 409011400
dashedName: numpy-arrays
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
index 10b2d94db6..c17dc49d08 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c156
title: Numpy 布爾值的數組
challengeType: 11
videoId: N1ttsMmcVMM
+bilibiliIds:
+ aid: 208091324
+ bvid: BV1Qh411p7V8
+ cid: 409012711
dashedName: numpy-boolean-arrays
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
index 83aa6ffe5b..0674f139dd 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c152
title: Numpy 簡介 A
challengeType: 11
videoId: P-JjV6GBCmk
+bilibiliIds:
+ aid: 718079611
+ bvid: BV18Q4y1k7om
+ cid: 409007080
dashedName: numpy-introduction-a
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
index 4fd546bb88..adc1a86e72 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c153
title: Numpy 簡介 B
challengeType: 11
videoId: YIqgrNLAZkA
+bilibiliIds:
+ aid: 250503382
+ bvid: BV1kv411w7vB
+ cid: 409010193
dashedName: numpy-introduction-b
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
index 21977e203c..2807a1ba44 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c155
title: Numpy 的運算
challengeType: 11
videoId: eqSVcJbaPdk
+bilibiliIds:
+ aid: 378057123
+ bvid: BV13f4y1w7od
+ cid: 409012507
dashedName: numpy-operations
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
index 9c9aa1ab62..6fd274c260 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15b
title: Pandas 條件選擇和 DataFrames 的修改
challengeType: 11
videoId: BFlH0fN5xRQ
+bilibiliIds:
+ aid: 505598518
+ bvid: BV1vg411c72y
+ cid: 409113534
dashedName: pandas-conditional-selection-and-modifying-dataframes
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
index c5c94681c9..6e955332d7 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15c
title: Pandas 創建列
challengeType: 11
videoId: _sSo2XZoB3E
+bilibiliIds:
+ aid: 975568901
+ bvid: BV1b44y1b7Cg
+ cid: 409018052
dashedName: pandas-creating-columns
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
index b07b97188c..ef90cb89e3 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15a
title: Pandas DataFrames
challengeType: 11
videoId: 7SgFBYXaiH0
+bilibiliIds:
+ aid: 890503235
+ bvid: BV1TP4y1h7qq
+ cid: 409014039
dashedName: pandas-dataframes
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
index d5c63c63bb..81ec961d45 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c159
title: Pandas 索引和條件選擇
challengeType: 11
videoId: '-ZOrgV_aA9A'
+bilibiliIds:
+ aid: 720604139
+ bvid: BV1FQ4y1k7tC
+ cid: 409013650
dashedName: pandas-indexing-and-conditional-selection
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
index 67cff2367d..f35ca122dd 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c158
title: Pandas 簡介
challengeType: 11
videoId: 0xACW-8cZU0
+bilibiliIds:
+ aid: 975510116
+ bvid: BV1u44y1b7fD
+ cid: 409013433
dashedName: pandas-introduction
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
index 5839f5adfd..825da560c9 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c166
title: Python 函數和集合
challengeType: 11
videoId: NzpU17ZVlUw
+bilibiliIds:
+ aid: 675544435
+ bvid: BV1pU4y1N7JC
+ cid: 409023833
dashedName: python-functions-and-collections
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
index 3a79987ce3..65665d7d05 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c165
title: Python 簡介
challengeType: 11
videoId: PrQV9JkLhb4
+bilibiliIds:
+ aid: 805597530
+ bvid: BV1634y1S7gD
+ cid: 409023550
dashedName: python-introduction
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
index 03706c919b..051cb8f821 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c167
title: Python 迭代和模塊
challengeType: 11
videoId: XzosGWLafrY
+bilibiliIds:
+ aid: 633068913
+ bvid: BV1db4y127M4
+ cid: 409024056
dashedName: python-iteration-and-modules
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
index 3e4d45c8ee..0924f7ed46 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed4
title: '訪問與更改元素、行和列'
challengeType: 11
videoId: v-7Y7koJ_N0
+bilibiliIds:
+ aid: 590517748
+ bvid: BV1Eq4y1f7Fa
+ cid: 409025392
dashedName: accessing-and-changing-elements-rows-columns
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/basics-of-numpy.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/basics-of-numpy.md
index 54be13c1bd..161375e1e8 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/basics-of-numpy.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/basics-of-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed3
title: Numpy 的基礎知識
challengeType: 11
videoId: f9QrZrKQMLI
+bilibiliIds:
+ aid: 763014202
+ bvid: BV1K64y1a7bu
+ cid: 409025169
dashedName: basics-of-numpy
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/copying-arrays-warning.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/copying-arrays-warning.md
index ba1d60a935..c856cb4635 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/copying-arrays-warning.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/copying-arrays-warning.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed7
title: 複製數組警告
challengeType: 11
videoId: iIoQ0_L0GvA
+bilibiliIds:
+ aid: 633008569
+ bvid: BV1Bb4y127fb
+ cid: 409026161
dashedName: copying-arrays-warning
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initialize-array-problem.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initialize-array-problem.md
index 255a51d732..9e16e1da4e 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initialize-array-problem.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initialize-array-problem.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed6
title: 初始化數組問題
challengeType: 11
videoId: 0jGfH8BPfOk
+bilibiliIds:
+ aid: 763027834
+ bvid: BV1w64y1a7eo
+ cid: 409025878
dashedName: initialize-array-problem
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initializing-different-arrays.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initializing-different-arrays.md
index 238e02321d..42bdd668ac 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initializing-different-arrays.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/initializing-different-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed5
title: 初始化不同的數組
challengeType: 11
videoId: CEykdsKT4U4
+bilibiliIds:
+ aid: 718044756
+ bvid: BV1MQ4y1k7BB
+ cid: 409025638
dashedName: initializing-different-arrays
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
index 4a2709300e..b708d548f8 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600eda
title: 加載數據和高級索引
challengeType: 11
videoId: tUdBZ7pF8Jg
+bilibiliIds:
+ aid: 720524642
+ bvid: BV1xQ4y1r7mu
+ cid: 409027117
dashedName: loading-data-and-advanced-indexing
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/mathematics.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/mathematics.md
index 5ef28be2c3..8a69591c63 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/mathematics.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/mathematics.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed8
title: 數學
challengeType: 11
videoId: 7txegvyhtVk
+bilibiliIds:
+ aid: 890533226
+ bvid: BV1KP4y1h733
+ cid: 409026503
dashedName: mathematics
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/reorganizing-arrays.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/reorganizing-arrays.md
index 6705895d72..3ba48f6ec0 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/reorganizing-arrays.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/reorganizing-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed9
title: 重組數組
challengeType: 11
videoId: VNWAQbEM-C8
+bilibiliIds:
+ aid: 548035655
+ bvid: BV1fq4y1N7aC
+ cid: 409026755
dashedName: reorganizing-arrays
---
diff --git a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/what-is-numpy.md b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/what-is-numpy.md
index e71c56856f..73495cd615 100644
--- a/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/what-is-numpy.md
+++ b/curriculum/challenges/chinese-traditional/08-data-analysis-with-python/numpy/what-is-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed2
title: Numpy 是什麼?
challengeType: 11
videoId: 5Nwfs5Ej85Q
+bilibiliIds:
+ aid: 293086867
+ bvid: BV1Tf4y1E7QZ
+ cid: 409024791
dashedName: what-is-numpy
---
diff --git a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
index 3c1523b777..747641c3be 100644
--- a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
+++ b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db0
title: 創建一個 TCP 客戶端
challengeType: 11
videoId: ugYfJNTawks
+bilibiliIds:
+ aid: 933058124
+ bvid: BV16M4y1g7zL
+ cid: 409034338
dashedName: creating-a-tcp-client
---
diff --git a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
index cea7adaa4e..f7f5970a4a 100644
--- a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
+++ b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db3
title: 開發橫幅抓取器
challengeType: 11
videoId: CeGW761BIsA
+bilibiliIds:
+ aid: 633014533
+ bvid: BV1Sb4y127H9
+ cid: 409036288
dashedName: developing-a-banner-grabber
---
diff --git a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
index 02dc191458..ba98b3f9ea 100644
--- a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
+++ b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db4
title: 開發一個端口掃描器
challengeType: 11
videoId: z_qkqZS7KZ4
+bilibiliIds:
+ aid: 208077317
+ bvid: BV1Uh411p7HS
+ cid: 409036706
dashedName: developing-a-port-scanner
---
diff --git a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
index 67e94737fe..66a7f63fa4 100644
--- a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
+++ b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db1
title: 開發 Nmap 掃描器 第一部分
challengeType: 11
videoId: jYk9XaGoAnk
+bilibiliIds:
+ aid: 805657338
+ bvid: BV1o34y1S7zf
+ cid: 414718986
dashedName: developing-an-nmap-scanner-part-1
---
diff --git a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
index 64dbf0ee3c..d9368195a6 100644
--- a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
+++ b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db2
title: 開發 Nmap 掃描器 第二部分
challengeType: 11
videoId: a98PscnUsTg
+bilibiliIds:
+ aid: 505526943
+ bvid: BV1Hg411c7oE
+ cid: 409034761
dashedName: developing-an-nmap-scanner-part-2
---
diff --git a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/introduction-and-setup.md b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/introduction-and-setup.md
index 62068e39d2..e8fdfcab74 100644
--- a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/introduction-and-setup.md
+++ b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/introduction-and-setup.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94dae
title: 介紹和安裝
challengeType: 11
videoId: XeQ7ZKtb998
+bilibiliIds:
+ aid: 718017704
+ bvid: BV13Q4y1k7hX
+ cid: 409033630
dashedName: introduction-and-setup
---
diff --git a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
index 86803b78ac..333bf61ca9 100644
--- a/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
+++ b/curriculum/challenges/chinese-traditional/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94daf
title: 瞭解套接字並創建 TCP 服務器
challengeType: 11
videoId: F1QI9tNuDQg
+bilibiliIds:
+ aid: 848005038
+ bvid: BV1bL4y1a7kJ
+ cid: 409034113
dashedName: understanding-sockets-and-creating-a-tcp-server
---
diff --git a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md
index 2863f66aa1..4a57e7d62a 100644
--- a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md
+++ b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md
@@ -1,6 +1,6 @@
---
id: 5900f3f51000cf542c50ff08
-title: 'Problem 137: Fibonacci golden nuggets'
+title: '問題 137:斐波那契金塊'
challengeType: 5
forumTopicId: 301765
dashedName: problem-137-fibonacci-golden-nuggets
@@ -8,30 +8,34 @@ dashedName: problem-137-fibonacci-golden-nuggets
# --description--
-Consider the infinite polynomial series AF(x) = xF1 + x2F2 + x3F3 + ..., where Fk is the kth term in the Fibonacci sequence: 1, 1, 2, 3, 5, 8, ... ; that is, Fk = Fk−1 + Fk−2, F1 = 1 and F2 = 1.
+考慮無窮級數 $A_{F}(x) = xF_1 + x^2F_2 + x^3F_3 + \ldots$,其中 $F_k$ 是斐波那契數列 $1, 1, 2, 3, 5, 8, \ldots$ 的第 $k$ 項;即 $F_k = F_{k − 1} + F_{k − 2}, F_1 = 1$,$F_2 = 1$。
-For this problem we shall be interested in values of x for which AF(x) is a positive integer.
+在這個問題中,我們關注的是那些使得 $A_{F}(x)$ 爲正整數的 $x$ 的值。
-Surprisingly AF(1/2)
+令人驚訝的是:
-=
+$$\begin{align} A_F(\frac{1}{2}) & = (\frac{1}{2}) × 1 + {(\frac{1}{2})}^2 × 1 + {(\frac{1}{2})}^3 × 2 + {(\frac{1}{2})}^4 × 3 + {(\frac{1}{2})}^5 × 5 + \cdots \\\\ & = \frac{1}{2} + \frac{1}{4} + \frac{2}{8} + \frac{3}{16} + \frac{5}{32} + \cdots \\\\ & = 2 \end{align}$$
-(1/2).1 + (1/2)2.1 + (1/2)3.2 + (1/2)4.3 + (1/2)5.5 + ...
+前五個對應的自然數 $x$ 如下。
-= 1/2 + 1/4 + 2/8 + 3/16 + 5/32 + ...
+| $x$ | $A_F(x)$ |
+| --------------------------- | -------- |
+| $\sqrt{2} − 1$ | $1$ |
+| $\frac{1}{2}$ | $2$ |
+| $\frac{\sqrt{13} − 2}{3}$ | $3$ |
+| $\frac{\sqrt{89} − 5}{8}$ | $4$ |
+| $\frac{\sqrt{34} − 3}{5}$ | $5$ |
-= 2 The corresponding values of x for the first five natural numbers are shown below.
+當 $x$ 是有理數時,我們稱 $A_F(x)$ 是一個金磚,因爲這樣的數字逐漸變得稀少;例如,第 10 個金磚是 74049690。
-xAF(x) √2−11 1/22 (√13−2)/33 (√89−5)/84 (√34−3)/55
-
-We shall call AF(x) a golden nugget if x is rational, because they become increasingly rarer; for example, the 10th golden nugget is 74049690. Find the 15th golden nugget.
+請求出第 15 個金磚。
# --hints--
-`euler137()` should return 1120149658760.
+`goldenNugget()` 應該返回 `1120149658760`。
```js
-assert.strictEqual(euler137(), 1120149658760);
+assert.strictEqual(goldenNugget(), 1120149658760);
```
# --seed--
@@ -39,12 +43,12 @@ assert.strictEqual(euler137(), 1120149658760);
## --seed-contents--
```js
-function euler137() {
+function goldenNugget() {
return true;
}
-euler137();
+goldenNugget();
```
# --solutions--
diff --git a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md
index 807f362857..e01a0067bd 100644
--- a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md
+++ b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md
@@ -1,6 +1,6 @@
---
id: 5900f37a1000cf542c50fe8d
-title: 'Problem 14: Longest Collatz sequence'
+title: '問題 14:最長考拉茲序列'
challengeType: 5
forumTopicId: 301768
dashedName: problem-14-longest-collatz-sequence
@@ -8,61 +8,61 @@ dashedName: problem-14-longest-collatz-sequence
# --description--
-The following iterative sequence is defined for the set of positive integers:
+對正整數集定義如下迭代序列:
-
n → n/2 (n is even)
+n → n / 2(n 爲偶數)
-n → 3n + 1 (n is odd)
+n → 3n + 1(n 爲奇數)
-Using the rule above and starting with 13, we generate the following sequence:
+從 13 開始使用上述規則,我們可以得到如下序列:
13 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 1
-It can be seen that this sequence (starting at 13 and finishing at 1) contains 10 terms. Although it has not been proved yet (Collatz Problem), it is thought that all starting numbers finish at 1.
+可以看出,該序列(從 13 開始到 1 結束)共包含 10 項。 雖然考拉茲猜想尚未得到證明,但是該猜想認爲以任意數字開始,序列均到 1 結束。
-Which starting number, under the given `limit`, produces the longest chain?
+求出在小於 `limit` 的數中,哪個可以產生最長的考拉茲序列?
-**Note:** Once the chain starts the terms are allowed to go above one million.
+**注意:** 序列中數字的個數允許超過一百萬。
# --hints--
-`longestCollatzSequence(14)` should return a number.
+`longestCollatzSequence(14)` 應該返回一個數字。
```js
assert(typeof longestCollatzSequence(14) === 'number');
```
-`longestCollatzSequence(14)` should return 9.
+`longestCollatzSequence(14)` 應該返回 9。
```js
assert.strictEqual(longestCollatzSequence(14), 9);
```
-`longestCollatzSequence(5847)` should return 3711.
+`longestCollatzSequence(5847)` 應該返回 3711。
```js
assert.strictEqual(longestCollatzSequence(5847), 3711);
```
-`longestCollatzSequence(46500)` should return 35655.
+`longestCollatzSequence(46500)` 應該返回 35655。
```js
assert.strictEqual(longestCollatzSequence(46500), 35655);
```
-`longestCollatzSequence(54512)` should return 52527.
+`longestCollatzSequence(54512)` 應該返回 52527。
```js
assert.strictEqual(longestCollatzSequence(54512), 52527);
```
-`longestCollatzSequence(100000)` should return 77031.
+`longestCollatzSequence(100000)` 應該返回 77031。
```js
assert.strictEqual(longestCollatzSequence(100000), 77031);
```
-`longestCollatzSequence(1000000)` should return 837799.
+`longestCollatzSequence(1000000)` 應該返回 837799。
```js
assert.strictEqual(longestCollatzSequence(1000000), 837799);
diff --git a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md
index 4bcd7e069a..ce1c038136 100644
--- a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md
+++ b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md
@@ -1,6 +1,6 @@
---
id: 5900f3f91000cf542c50ff0b
-title: 'Problem 141: Investigating progressive numbers, n, which are also square'
+title: '問題 141:累進平方數 n'
challengeType: 5
forumTopicId: 301770
dashedName: problem-141-investigating-progressive-numbers-n-which-are-also-square
@@ -8,22 +8,22 @@ dashedName: problem-141-investigating-progressive-numbers-n-which-are-also-squar
# --description--
-A positive integer, n, is divided by d and the quotient and remainder are q and r respectively. In addition d, q, and r are consecutive positive integer terms in a geometric sequence, but not necessarily in that order.
+一個正整數 $n$ 除以 $d$ 後得到商 $q$ 和餘數 $r$。 同時 $d$,$q$ 和 $r$ 是一個等比數列中三個連續的正整數項,但順序不要求一致。
-For example, 58 divided by 6 has quotient 9 and remainder 4. It can also be seen that 4, 6, 9 are consecutive terms in a geometric sequence (common ratio 3/2).
+例如,58 除以 6 後得到商 9 和餘數 4。 可以發現,4、6、9 構成一個等比數列的連續三項(公比爲 $\frac{3}{2}$)。
-We will call such numbers, n, progressive.
+我們稱這樣的數字 $n$ 爲累進數。
-Some progressive numbers, such as 9 and 10404 = 1022, happen to also be perfect squares. The sum of all progressive perfect squares below one hundred thousand is 124657.
+一些累進數,如 9 和 10404 = ${102}^2$,同時也是完全平方數。 所有小於十萬的累進平方數之和爲 124657。
-Find the sum of all progressive perfect squares below one trillion (1012).
+請求出所有小於一萬億(${10}^{12}$)累進平方數之和。
# --hints--
-`euler141()` should return 878454337159.
+`progressivePerfectSquares()` 應該返回 `878454337159`。
```js
-assert.strictEqual(euler141(), 878454337159);
+assert.strictEqual(progressivePerfectSquares(), 878454337159);
```
# --seed--
@@ -31,12 +31,12 @@ assert.strictEqual(euler141(), 878454337159);
## --seed-contents--
```js
-function euler141() {
+function progressivePerfectSquares() {
return true;
}
-euler141();
+progressivePerfectSquares();
```
# --solutions--
diff --git a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md
index 03d921eac9..9f1efef7db 100644
--- a/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md
+++ b/curriculum/challenges/chinese-traditional/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md
@@ -1,6 +1,6 @@
---
id: 5900f3fa1000cf542c50ff0d
-title: 'Problem 142: Perfect Square Collection'
+title: '問題 142:完全平方數合集'
challengeType: 5
forumTopicId: 301771
dashedName: problem-142-perfect-square-collection
@@ -8,14 +8,14 @@ dashedName: problem-142-perfect-square-collection
# --description--
-Find the smallest x + y + z with integers x > y > z > 0 such that x + y, x − y, x + z, x − z, y + z, y − z are all perfect squares.
+請找出最小的 $x + y + z$,其中整數 $x > y > z > 0$ 需要滿足 $x + y$、$x − y$、$x + z$、$x − z$、$y + z$、$y − z$ 均爲完全平方數。
# --hints--
-`euler142()` should return 1006193.
+`perfectSquareCollection()` 應該返回 `1006193`。
```js
-assert.strictEqual(euler142(), 1006193);
+assert.strictEqual(perfectSquareCollection(), 1006193);
```
# --seed--
@@ -23,12 +23,12 @@ assert.strictEqual(euler142(), 1006193);
## --seed-contents--
```js
-function euler142() {
+function perfectSquareCollection() {
return true;
}
-euler142();
+perfectSquareCollection();
```
# --solutions--
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/conclusion.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/conclusion.md
index eac7eced5f..29ee82038a 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/conclusion.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/conclusion.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da6
title: 結論
challengeType: 11
videoId: LMNub5frQi4
+bilibiliIds:
+ aid: 208033449
+ bvid: BV1Wh411p79h
+ cid: 409139716
dashedName: conclusion
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
index 628d687311..fc2e6d106e 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d99
title: '卷積神經網絡:評估模型'
challengeType: 11
videoId: eCATNvwraXg
+bilibiliIds:
+ aid: 933030136
+ bvid: BV1hM4y1g7Bx
+ cid: 409132265
dashedName: convolutional-neural-networks-evaluating-the-model
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
index b84f66bc5c..6eb6f7a948 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9a
title: '卷積神經網絡:選擇預訓練模型'
challengeType: 11
videoId: h1XUt1AgIOI
+bilibiliIds:
+ aid: 463063633
+ bvid: BV1qL411x73q
+ cid: 409132626
dashedName: convolutional-neural-networks-picking-a-pretrained-model
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
index 3ca22167a6..dbe560bc3d 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d97
title: '卷積神經網絡:卷積層'
challengeType: 11
videoId: LrdmcQpTyLw
+bilibiliIds:
+ aid: 805608595
+ bvid: BV1Q34y1S7nr
+ cid: 409131585
dashedName: convolutional-neural-networks-the-convolutional-layer
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
index a715b050d4..5b71247338 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d96
title: 卷積神經網絡
challengeType: 11
videoId: _1kTP7uoU9E
+bilibiliIds:
+ aid: 805604251
+ bvid: BV1D34y1S7zS
+ cid: 409131358
dashedName: convolutional-neural-networks
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
index 603ef3c76a..8c0d361213 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8e
title: '核心學習算法:構建模型'
challengeType: 11
videoId: 5wHw8BTd2ZQ
+bilibiliIds:
+ aid: 763068584
+ bvid: BV1s64y1a7WR
+ cid: 409128675
dashedName: core-learning-algorithms-building-the-model
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
index ae8f273aad..5ceb3b7709 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8d
title: '核心學習算法:分類'
challengeType: 11
videoId: qFF7ZQNvK9E
+bilibiliIds:
+ aid: 505531167
+ bvid: BV1Vg411c7av
+ cid: 409128427
dashedName: core-learning-algorithms-classification
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
index 020ffa8392..9bf29abca3 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8f
title: '核心學習算法:聚類'
challengeType: 11
videoId: 8sqIaHc9Cz4
+bilibiliIds:
+ aid: 720567137
+ bvid: BV1BQ4y1r7UY
+ cid: 409129005
dashedName: core-learning-algorithms-clustering
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
index 9262c86abb..bb2357e1bd 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d90
title: '核心學習算法:隱馬爾可夫模型'
challengeType: 11
videoId: IZg24y4wEPY
+bilibiliIds:
+ aid: 633081400
+ bvid: BV1tb4y1y72V
+ cid: 409129376
dashedName: core-learning-algorithms-hidden-markov-models
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
index cec4df545e..f6f62f808e 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8c
title: '核心學習算法:訓練過程'
challengeType: 11
videoId: _cEwvqVoBhI
+bilibiliIds:
+ aid: 335593652
+ bvid: BV12R4y1H7Fi
+ cid: 409128047
dashedName: core-learning-algorithms-the-training-process
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
index c737140ca2..a5ad092fec 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8b
title: '核心學習算法:訓練和測試數據'
challengeType: 11
videoId: wz9J1slsi7I
+bilibiliIds:
+ aid: 335509743
+ bvid: BV1rA411F7bG
+ cid: 409127635
dashedName: core-learning-algorithms-training-and-testing-data
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
index a6a966c873..aa9bc67141 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d91
title: '核心學習算法:使用概率進行預測'
challengeType: 11
videoId: fYAYvLUawnc
+bilibiliIds:
+ aid: 763245369
+ bvid: BV1B64y187gE
+ cid: 414731624
dashedName: core-learning-algorithms-using-probabilities-to-make-predictions
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
index 52e066146c..49b3237c3e 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8a
title: '核心學習算法:處理數據'
challengeType: 11
videoId: u85IOSsJsPI
+bilibiliIds:
+ aid: 675550447
+ bvid: BV1RU4y1w7up
+ cid: 409127383
dashedName: core-learning-algorithms-working-with-data
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
index 5064f36174..9e1a3047f8 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d89
title: 核心學習算法
challengeType: 11
videoId: u5lZURgcWnU
+bilibiliIds:
+ aid: 763034025
+ bvid: BV1A64y1a7g4
+ cid: 409127051
dashedName: core-learning-algorithms
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
index beec45ceb7..3740178147 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d98
title: 創建卷積神經網絡
challengeType: 11
videoId: kfv0K8MtkIc
+bilibiliIds:
+ aid: 420605824
+ bvid: BV1p341127wW
+ cid: 409131869
dashedName: creating-a-convolutional-neural-network
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
index 14b5e5607b..78a47d14a1 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d87
title: '簡介:機器學習基礎'
challengeType: 11
videoId: KwL1qTR5MT8
+bilibiliIds:
+ aid: 293071716
+ bvid: BV1Yf4y1n7R2
+ cid: 409125921
dashedName: introduction-machine-learning-fundamentals
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
index c2acb1c74d..632ecd9f46 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d88
title: TensorFlow 簡介
challengeType: 11
videoId: r9hRyGGjOgQ
+bilibiliIds:
+ aid: 675554869
+ bvid: BV1dU4y1w7vw
+ cid: 409126541
dashedName: introduction-to-tensorflow
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
index 0d21bda27e..aea90712e6 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da1
title: '使用 RNN 處理自然語言:構建模型'
challengeType: 11
videoId: 32WBFS7lfsw
+bilibiliIds:
+ aid: 848015573
+ bvid: BV1YL4y1a7WS
+ cid: 409138016
dashedName: natural-language-processing-with-rnns-building-the-model
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
index c0a3eefa5b..4c7be161b5 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da0
title: '使用 RNN 進行自然語言處理:創建戲劇生成器'
challengeType: 11
videoId: j5xsxjq_Xk8
+bilibiliIds:
+ aid: 720525759
+ bvid: BV1xQ4y1r7tw
+ cid: 409137674
dashedName: natural-language-processing-with-rnns-create-a-play-generator
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
index 251f1b6fcb..61e561783f 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9f
title: '使用 RNN 進行自然語言處理:進行預測'
challengeType: 11
videoId: WO1hINnBj20
+bilibiliIds:
+ aid: 848023400
+ bvid: BV1WL4y1a75i
+ cid: 409136303
dashedName: natural-language-processing-with-rnns-making-predictions
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
index d01c770363..e35d0b904a 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9c
title: '使用 RNN 進行自然語言處理:第 2 部分'
challengeType: 11
videoId: mUU9YXOFbZg
+bilibiliIds:
+ aid: 975558435
+ bvid: BV1L44y1b7Lp
+ cid: 409135242
dashedName: natural-language-processing-with-rnns-part-2
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
index ece8874ddd..00f9a89451 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9d
title: '使用 RNN 進行自然語言處理:循環神經網絡'
challengeType: 11
videoId: bX5681NPOcA
+bilibiliIds:
+ aid: 335605808
+ bvid: BV1SR4y1H7ri
+ cid: 409135641
dashedName: natural-language-processing-with-rnns-recurring-neural-networks
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
index 8af1d88be6..2a9b37cb3b 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9e
title: '使用 RNN 進行自然語言處理:情感分析'
challengeType: 11
videoId: lYeLtu8Nq7c
+bilibiliIds:
+ aid: 933111408
+ bvid: BV1TM4y137VB
+ cid: 409135996
dashedName: natural-language-processing-with-rnns-sentiment-analysis
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
index a33ff83255..bd487c461b 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da2
title: '使用 RNN 進行自然語言處理:訓練模型'
challengeType: 11
videoId: hEUiK7j9UI8
+bilibiliIds:
+ aid: 250542136
+ bvid: BV19v411w7Fi
+ cid: 409138327
dashedName: natural-language-processing-with-rnns-training-the-model
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
index 7efcae7efc..afe44465af 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9b
title: 使用 RNN 的自然語言處理
challengeType: 11
videoId: ZyCaF5S-lKg
+bilibiliIds:
+ aid: 548105306
+ bvid: BV1nq4y1K7VU
+ cid: 409134745
dashedName: natural-language-processing-with-rnns
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
index a0ecbd9c54..d3ac21c3b0 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d93
title: '神經網絡:激活函數'
challengeType: 11
videoId: S45tqW6BqRs
+bilibiliIds:
+ aid: 675610466
+ bvid: BV1wU4y1A7TJ
+ cid: 409130203
dashedName: neural-networks-activation-functions
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
index e42d819345..525d42ec6a 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d95
title: '神經網絡:創建模型'
challengeType: 11
videoId: K8bz1bmOCTw
+bilibiliIds:
+ aid: 848109040
+ bvid: BV1EL4y1878f
+ cid: 409130886
dashedName: neural-networks-creating-a-model
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
index 32eef4f4f2..150f2ae8a6 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d94
title: '神經網絡:優化'
challengeType: 11
videoId: hdOtRPQe1o4
+bilibiliIds:
+ aid: 763064173
+ bvid: BV1364y1a7eM
+ cid: 409130557
dashedName: neural-networks-optimizers
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
index 34d5a2a732..be8d867fc1 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d92
title: 使用 TensorFlow 的神經網絡
challengeType: 11
videoId: uisdfrNrZW4
+bilibiliIds:
+ aid: 378031840
+ bvid: BV1Qf4y1c7Dc
+ cid: 409129888
dashedName: neural-networks-with-tensorflow
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
index 3c23f4ff7c..26f7e71e05 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da5
title: '使用 Q-Learning 進行強化學習:示例'
challengeType: 11
videoId: RBBSNta234s
+bilibiliIds:
+ aid: 848073871
+ bvid: BV1uL4y187Eq
+ cid: 409139471
dashedName: reinforcement-learning-with-q-learning-example
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
index d7c79d65c5..1be66b1b0e 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da4
title: '使用 Q-Learning 進行強化學習:第 2 部分'
challengeType: 11
videoId: DX7hJuaUZ7o
+bilibiliIds:
+ aid: 420570359
+ bvid: BV1G341127zr
+ cid: 409139190
dashedName: reinforcement-learning-with-q-learning-part-2
---
diff --git a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
index 60a6bef315..21ac8c0414 100644
--- a/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
+++ b/curriculum/challenges/chinese-traditional/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da3
title: 使用 Q-Learning 進行強化學習
challengeType: 11
videoId: Cf7DSU0gVb4
+bilibiliIds:
+ aid: 463025802
+ bvid: BV1iL411x7L6
+ cid: 409138811
dashedName: reinforcement-learning-with-q-learning
---
diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.md
index 0bc629c719..971c120fc9 100644
--- a/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.md
+++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-css/size-your-images.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9acdf08812
title: 调整图片的大小
challengeType: 0
-videoUrl: 'https://scrimba.com/c/cM9MmCP'
forumTopicId: 18282
dashedName: size-your-images
---
diff --git a/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md b/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
index d1fc85b81a..832c96355c 100644
--- a/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
+++ b/curriculum/challenges/chinese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9aedf08812
title: 给网站添加图片
challengeType: 0
-videoUrl: 'https://scrimba.com/p/pVMPUv/c8EbJf2'
forumTopicId: 16640
dashedName: add-images-to-your-website
---
diff --git a/curriculum/challenges/chinese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md b/curriculum/challenges/chinese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
index 88e038081a..509163d747 100644
--- a/curriculum/challenges/chinese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
+++ b/curriculum/challenges/chinese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
@@ -2,7 +2,6 @@
id: 567af2437cbaa8c51670a16c
title: 测试对象的属性
challengeType: 1
-videoUrl: 'https://scrimba.com/c/c6Wz4ySr'
forumTopicId: 18324
dashedName: testing-objects-for-properties
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
index f97457e949..20a6e391c4 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05b
title: 编写你自己的函数
challengeType: 11
videoId: nLDychdBwUg
+bilibiliIds:
+ aid: 249487483
+ bvid: BV1Fv411J7bS
+ cid: 376340281
dashedName: build-your-own-functions
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
index 20004803d9..e9a016681f 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06d
title: Tuples 的比较和排序
challengeType: 11
videoId: dZXzBXUxxCs
+bilibiliIds:
+ aid: 931886163
+ bvid: BV1HM4y1T7TK
+ cid: 376533673
dashedName: comparing-and-sorting-tuples
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
index eb292299e4..a9f7858d07 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f058
title: 根据条件执行
challengeType: 11
videoId: gz_IfIsZQtc
+bilibiliIds:
+ aid: 206949935
+ bvid: BV1Jh411z7bY
+ cid: 376337035
dashedName: conditional-execution
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
index b89d73f1f0..7886cdb1c0 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f097
title: '数据可视化:邮件列表'
challengeType: 11
videoId: RYdW660KkaQ
+bilibiliIds:
+ aid: 334465586
+ bvid: BV18w411R7dD
+ cid: 377545473
dashedName: data-visualization-mailing-lists
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
index 07e8c15549..8e3392d7ea 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f096
title: '数据可视化:页面排名'
challengeType: 11
videoId: 6-w_qIUwaxU
+bilibiliIds:
+ aid: 376950472
+ bvid: BV1ho4y1Q72u
+ cid: 377544599
dashedName: data-visualization-page-rank
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
index 8ebe8963cb..018d5a26fd 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f069
title: 字典和循环
challengeType: 11
videoId: EEmekKiKG70
+bilibiliIds:
+ aid: 589401038
+ bvid: BV1eq4y1X7xU
+ cid: 376387132
dashedName: dictionaries-and-loops
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
index 662bfcd6c0..406914e746 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f068
title: '字典:常见应用'
challengeType: 11
videoId: f17xPfIXct0
+bilibiliIds:
+ aid: 805747023
+ bvid: BV1v34y1D7ug
+ cid: 414168867
dashedName: dictionaries-common-applications
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
index 9a467c2a7c..f7ac215e9a 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f063
title: 文件作为序列
challengeType: 11
videoId: cIA0EokbaHE
+bilibiliIds:
+ aid: 974380307
+ bvid: BV1p44y1m7br
+ cid: 376388846
dashedName: files-as-a-sequence
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
index 1b21c90a64..564c70c2c3 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f057
title: 中间表达式
challengeType: 11
videoId: dKgUaIa5ATg
+bilibiliIds:
+ aid: 334428894
+ bvid: BV1uw411R7gH
+ cid: 376318468
dashedName: intermediate-expressions
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
index d2f0202173..096d378ed2 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f061
title: 中间字符串
challengeType: 11
videoId: KgT_fYLXnyk
+bilibiliIds:
+ aid: 291983121
+ bvid: BV1Zf4y157yG
+ cid: 376394116
dashedName: intermediate-strings
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
index 5b9800cb86..7e0e7fca26 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
@@ -3,6 +3,10 @@ id: 5e6a54c358d3af90110a60a3
title: '导言:Python 的元素'
challengeType: 11
videoId: aRY_xjL35v0
+bilibiliIds:
+ aid: 674420725
+ bvid: BV1MU4y1H7Lj
+ cid: 376315889
dashedName: introduction-elements-of-python
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
index 8b5e98ea23..503290f586 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
@@ -3,6 +3,10 @@ id: 5e6a54af58d3af90110a60a1
title: '导言:硬件架构'
challengeType: 11
videoId: H6qtjRTfSog
+bilibiliIds:
+ aid: 206977572
+ bvid: BV1zh411z7Ak
+ cid: 376199262
dashedName: introduction-hardware-architecture
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
index 4a594842de..919342faf2 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
@@ -3,6 +3,10 @@ id: 5e6a54ba58d3af90110a60a2
title: '导言:Python 这门编程语言'
challengeType: 11
videoId: 0QeGbZNS_bY
+bilibiliIds:
+ aid: 674404602
+ bvid: BV1GU4y1H7vB
+ cid: 376315625
dashedName: introduction-python-as-a-language
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
index a45cf5012a..4de45efa0d 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05d
title: '迭代:定义循环'
challengeType: 11
videoId: hiRTRAqNlpE
+bilibiliIds:
+ aid: 291987032
+ bvid: BV1ff4y157Q3
+ cid: 376385255
dashedName: iterations-definite-loops
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
index 528fdfc10f..460be23079 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05e
title: '迭代:循环成语'
challengeType: 11
videoId: AelGAcoMXbI
+bilibiliIds:
+ aid: 334491369
+ bvid: BV1tw411R7Mm
+ cid: 376530765
dashedName: iterations-loop-idioms
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
index d94f01b38c..e5cf8f51fa 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05f
title: '迭代:更多模式'
challengeType: 11
videoId: 9Wtqo6vha1M
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: iterations-more-patterns
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
index ab6f92611d..54a0448bba 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05c
title: 循环和迭代
challengeType: 11
videoId: dLA-szNRnUY
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: loops-and-iterations
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
index 9238d92104..d80b40eb47 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08b
title: 建立关系数据库
challengeType: 11
videoId: MQ5z4bdF92U
+bilibiliIds:
+ aid: 249380678
+ bvid: BV1vv411E76L
+ cid: 377531786
dashedName: make-a-relational-database
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
index 192a2e4b4c..11e7d07694 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f059
title: 更多条件结构
challengeType: 11
videoId: HdL82tAZR20
+bilibiliIds:
+ aid: 631930118
+ bvid: BV1Nb4y1r7z2
+ cid: 376337449
dashedName: more-conditional-structures
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
index 3ef0c8a74c..0463247fd9 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f072
title: 网络协议
challengeType: 11
videoId: c6vZGescaSc
+bilibiliIds:
+ aid: 931950996
+ bvid: BV1cM4y1N7K6
+ cid: 376388317
dashedName: networking-protocol
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
index 7f37e03673..3bb7e65822 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f074
title: '联网:文本处理'
challengeType: 11
videoId: Pv_pJgVu8WI
+bilibiliIds:
+ aid: 804442498
+ bvid: BV16y4y1j7WW
+ cid: 377329124
dashedName: networking-text-processing
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
index 6456567707..4fcc8fd8ff 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f075
title: '网络:在 Python 中使用 urllib'
challengeType: 11
videoId: 7lFM1T_CxBs
+bilibiliIds:
+ aid: 546908270
+ bvid: BV1Xq4y1H7e6
+ cid: 377331524
dashedName: networking-using-urllib-in-python
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
index dd4ca677fe..ad5a6c0896 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f076
title: '网络:使用 Python 进行 Web 爬取'
challengeType: 11
videoId: Uyioq2q4cEg
+bilibiliIds:
+ aid: 674382625
+ bvid: BV1oU4y1n7zQ
+ cid: 377331774
dashedName: networking-web-scraping-with-python
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
index c9cd15b723..29f3a92edb 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f071
title: 用 Python 联网
challengeType: 11
videoId: _kJvneKVdNM
+bilibiliIds:
+ aid: 419494612
+ bvid: BV1r341167jT
+ cid: 376385858
dashedName: networking-with-python
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
index c5be00f70a..b7572744a6 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f073
title: '联网:编写一个 Web 浏览器'
challengeType: 11
videoId: zjyT9DaAjx4
+bilibiliIds:
+ aid: 761908574
+ bvid: BV1j64y1x7wx
+ cid: 377319579
dashedName: networking-write-a-web-browser
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
index d3aafe998b..1c95cbab1a 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f087
title: 对象的生命周期
challengeType: 11
videoId: p1r3h_AMMIM
+bilibiliIds:
+ aid: 461998717
+ bvid: BV1JL411n7Hr
+ cid: 377529681
dashedName: object-lifecycle
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
index 0440f863e5..921a41bcee 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f086
title: '对象:一个示例类'
challengeType: 11
videoId: FiABKEuaSJ8
+bilibiliIds:
+ aid: 589451777
+ bvid: BV1rq4y1X7TG
+ cid: 377523194
dashedName: objects-a-sample-class
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
index 1253b13eba..4c3d47dc62 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f088
title: '对象:继承'
challengeType: 11
videoId: FBL3alYrxRM
+bilibiliIds:
+ aid: 631990691
+ bvid: BV1sb4y1r7GF
+ cid: 377529901
dashedName: objects-inheritance
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
index 659e6b8797..f6b6e17077 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f067
title: Python 字典
challengeType: 11
videoId: dnzvfimrRMg
+bilibiliIds:
+ aid: 631893305
+ bvid: BV19b4y167kj
+ cid: 376386176
dashedName: python-dictionaries
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-functions.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-functions.md
index 9cb78e9f90..27a7ff7caf 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-functions.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05a
title: Python 函数
challengeType: 11
videoId: 3JGF-n3tDPU
+bilibiliIds:
+ aid: 631881917
+ bvid: BV1Xb4y167P4
+ cid: 376337920
dashedName: python-functions
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-lists.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-lists.md
index 62692e029f..c69dc1d753 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-lists.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f064
title: Python 列表
challengeType: 11
videoId: Y0cvfDpYC_c
+bilibiliIds:
+ aid: 249460305
+ bvid: BV1Dv411E7Uj
+ cid: 376532993
dashedName: python-lists
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-objects.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-objects.md
index 849b228269..b728ee6d4e 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-objects.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/python-objects.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f085
title: Python 对象
challengeType: 11
videoId: uJxGeTYy0us
+bilibiliIds:
+ aid: 889496260
+ bvid: BV1ZP4y1s7G6
+ cid: 377522762
dashedName: python-objects
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/reading-files.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/reading-files.md
index 3c9dd1b013..cb882ae827 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/reading-files.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/reading-files.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f062
title: 阅读文件中
challengeType: 11
videoId: Fo1tW09KIwo
+bilibiliIds:
+ aid: 334439927
+ bvid: BV1pw411R7UK
+ cid: 376532076
dashedName: reading-files
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
index 8e063d94e9..2a378673ee 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06f
title: '正则表达式:匹配和提取数据'
challengeType: 11
videoId: LaCZnTbQGkE
+bilibiliIds:
+ aid: 975629041
+ bvid: BV1i44y1b7hE
+ cid: 414167130
dashedName: regular-expressions-matching-and-extracting-data
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
index 901627a8a6..960a1f36e7 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f070
title: '正则表达式: 实用应用'
challengeType: 11
videoId: xCjFU9G6x48
+bilibiliIds:
+ aid: 546924659
+ bvid: BV1mq4y1H7rZ
+ cid: 376386493
dashedName: regular-expressions-practical-applications
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
index aa8d4c14f1..0d65595f03 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06e
title: 正则表达式
challengeType: 11
videoId: Yud_COr6pZo
+bilibiliIds:
+ aid: 759422542
+ bvid: BV1W64y167YD
+ cid: 376387549
dashedName: regular-expressions
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
index c2a1a17f7c..aa48e4165b 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08c
title: 关系数据库设计
challengeType: 11
videoId: AqdfbrpkbHk
+bilibiliIds:
+ aid: 504388066
+ bvid: BV1Qg411j742
+ cid: 377532216
dashedName: relational-database-design
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
index 6f0b3d9f4a..538148408d 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08a
title: 关系数据库和 SQLite
challengeType: 11
videoId: QlNod5-kFpA
+bilibiliIds:
+ aid: 249449958
+ bvid: BV12v411E74H
+ cid: 377530805
dashedName: relational-databases-and-sqlite
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
index f0621b6704..4728d3443d 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08f
title: '关系数据库:联接操作'
challengeType: 11
videoId: jvDw3D9GKac
+bilibiliIds:
+ aid: 804461215
+ bvid: BV1Ry4y1j7tv
+ cid: 377542880
dashedName: relational-databases-join-operation
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
index 34e597c2b4..c26f2c89ff 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
@@ -3,6 +3,10 @@ id: 5e7b9f190b6c005b0e76f090
title: '关系型数据库:多对多关系'
challengeType: 11
videoId: z-SBYcvEQOc
+bilibiliIds:
+ aid: 291965127
+ bvid: BV1Af4y1L7BK
+ cid: 377543409
dashedName: relational-databases-many-to-many-relationships
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
index e0e6b47175..5ceff48d68 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08e
title: '关系型数据库:关系的建立'
challengeType: 11
videoId: CSbqczsHVnc
+bilibiliIds:
+ aid: 376996473
+ bvid: BV1jo4y1S7VY
+ cid: 377532966
dashedName: relational-databases-relationship-building
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
index 58f343ea4c..4b66883874 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08d
title: 在关系型数据库中表示关系
challengeType: 11
videoId: '-orenCNdC2Q'
+bilibiliIds:
+ aid: 931953070
+ bvid: BV1FM4y1N7hc
+ cid: 377532529
dashedName: representing-relationships-in-a-relational-database
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
index f3b2b40335..32064cb394 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f066
title: 字符串和列表
challengeType: 11
videoId: lxcFa7ldCi0
+bilibiliIds:
+ aid: 804401443
+ bvid: BV1By4y1j7F9
+ cid: 376385517
dashedName: strings-and-lists
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
index ccc02393d7..2a483f3214 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f060
title: Python 字符串
challengeType: 11
videoId: LYZj207fKpQ
+bilibiliIds:
+ aid: 504434218
+ bvid: BV1Lg41177s8
+ cid: 376531802
dashedName: strings-in-python
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
index adbcba3ee6..c786a74ccc 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f06c
title: 元组集合
challengeType: 11
videoId: 3Lxpladfh2k
+bilibiliIds:
+ aid: 334468209
+ bvid: BV1aw411R77G
+ cid: 376533308
dashedName: the-tuples-collection
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
index c95df90fa5..fadd1652a4 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07a
title: 使用网络服务
challengeType: 11
videoId: oNl1OVDPGKE
+bilibiliIds:
+ aid: 759406136
+ bvid: BV1b64y16746
+ cid: 377332189
dashedName: using-web-services
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
index 5dac8ed2bc..6f2b93dfdd 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f056
title: '变量、表达式和语句'
challengeType: 11
videoId: nELR-uyyrok
+bilibiliIds:
+ aid: 419396811
+ bvid: BV1iV411p7Mn
+ cid: 376318116
dashedName: variables-expressions-and-statements
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
index 3fb6cb2aba..6061f804f6 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f690b6c005b0e76f095
title: 使用 Python 可视化数据
challengeType: 11
videoId: e3lydkH0prw
+bilibiliIds:
+ aid: 291996462
+ bvid: BV15f4y1L7jH
+ cid: 377544192
dashedName: visualizing-data-with-python
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
index 1498d93968..d2670e9b32 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f080
title: 'Web 服务:API 速率限制和安全性'
challengeType: 11
videoId: pI-g0lI8ngs
+bilibiliIds:
+ aid: 249456172
+ bvid: BV1Sv411E7qa
+ cid: 377336269
dashedName: web-services-api-rate-limiting-and-security
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
index da3591bbec..ae62469637 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f07f
title: 'Web 服务:API'
challengeType: 11
videoId: oUNn1psfBJg
+bilibiliIds:
+ aid: 589451017
+ bvid: BV1zq4y1X7A9
+ cid: 377336011
dashedName: web-services-apis
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
index 59e2d8b664..6d1ff9f337 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07d
title: 'Web 服务:JSON'
challengeType: 11
videoId: ZJE-U56BppM
+bilibiliIds:
+ aid: 419491911
+ bvid: BV1r3411672w
+ cid: 377332928
dashedName: web-services-json
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
index 19c8d36df5..181f6d7372 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07e
title: 'Web 服务:面向服务的方法'
challengeType: 11
videoId: muerlsCHExI
+bilibiliIds:
+ aid: 846899335
+ bvid: BV1E54y1J7oz
+ cid: 377333277
dashedName: web-services-service-oriented-approach
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
index cfd468679e..80e5a24b7c 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07c
title: 'Web 服务:XML 模式'
challengeType: 11
videoId: yWU9kTxW-nc
+bilibiliIds:
+ aid: 631951466
+ bvid: BV1Vb4y1r7m7
+ cid: 377332603
dashedName: web-services-xml-schema
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
index 5e6ae4b6df..7a901acdf0 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07b
title: 'Web 服务:XML'
challengeType: 11
videoId: _pZ0srbg7So
+bilibiliIds:
+ aid: 761920032
+ bvid: BV1n64y1x7KW
+ cid: 377332379
dashedName: web-services-xml
---
diff --git a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
index 83a208cf96..c8822eeb35 100644
--- a/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
+++ b/curriculum/challenges/chinese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f065
title: 使用列表
challengeType: 11
videoId: lCnHfTHkhbE
+bilibiliIds:
+ aid: 376965958
+ bvid: BV1No4y1S7oi
+ cid: 376387989
dashedName: working-with-lists
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
index ba6b4e7636..c0dfe02a05 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14d
title: 数据分析 案例 A
challengeType: 11
videoId: nVAaxZ34khk
+bilibiliIds:
+ aid: 590571151
+ bvid: BV1sq4y1f7gr
+ cid: 409002372
dashedName: data-analysis-example-a
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
index 0c75ad326b..16d00e4f39 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14e
title: 数据分析 案例 B
challengeType: 11
videoId: 0kJz0q0pvgQ
+bilibiliIds:
+ aid: 505593432
+ bvid: BV1kg411c7M6
+ cid: 409003530
dashedName: data-analysis-example-b
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
index 01d3eda975..77909ba414 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c160
title: 数据清理和可视化
challengeType: 11
videoId: mHjxzFS5_Z0
+bilibiliIds:
+ aid: 933107558
+ bvid: BV1KM4y137Ny
+ cid: 409019632
dashedName: data-cleaning-and-visualizations
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
index ea12e9403f..307bbde2df 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15f
title: 数据 清理重复项
challengeType: 11
videoId: kj7QqjXhH6A
+bilibiliIds:
+ aid: 675611672
+ bvid: BV1VU4y1A7tu
+ cid: 409019368
dashedName: data-cleaning-duplicates
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
index c094124dea..29df6c0288 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15d
title: 数据清理简介
challengeType: 11
videoId: ovYNhnltVxY
+bilibiliIds:
+ aid: 250574398
+ bvid: BV1Pv411A7GN
+ cid: 409018611
dashedName: data-cleaning-introduction
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
index 711c7fae06..a297be0053 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15e
title: DataFrames 中的数据清理
challengeType: 11
videoId: sTMN_pdI6S0
+bilibiliIds:
+ aid: 505597026
+ bvid: BV1Yg411c7bx
+ cid: 409018948
dashedName: data-cleaning-with-dataframes
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
index b51b0701cb..be45222b16 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14f
title: 如何使用 Jupyter Notebook
challengeType: 11
videoId: h8caJq2Bb9w
+bilibiliIds:
+ aid: 293035919
+ bvid: BV1Hf4y1n7qr
+ cid: 409002965
dashedName: how-to-use-jupyter-notebooks-intro
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
index 0bb7ecc1d1..bb62f75130 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14c
title: 数据分析简介
challengeType: 11
videoId: VJrP2FUzKP0
+bilibiliIds:
+ aid: 378034466
+ bvid: BV19f4y1c7nu
+ cid: 409001487
dashedName: introduction-to-data-analysis
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
index bd2da8504d..40ace2b9c2 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c150
title: Jupyter Notebooks 单元格
challengeType: 11
videoId: 5PPegAs9aLA
+bilibiliIds:
+ aid: 420510493
+ bvid: BV19341117Hq
+ cid: 409003280
dashedName: jupyter-notebooks-cells
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
index 54b815d19c..d9fbb4e365 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c151
title: 在 Jupyter Notebooks 中导入和导出数据
challengeType: 11
videoId: k1msxD3JIxE
+bilibiliIds:
+ aid: 975540688
+ bvid: BV1n44y1b7Gi
+ cid: 409006337
dashedName: jupyter-notebooks-importing-and-exporting-data
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
index 794419854a..343e591d59 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c157
title: Numpy 代数和大小
challengeType: 11
videoId: XAT97YLOKD8
+bilibiliIds:
+ aid: 250621433
+ bvid: BV1hv41137uM
+ cid: 409013128
dashedName: numpy-algebra-and-size
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
index 8b2df714dd..3281c0a379 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c154
title: Numpy 数组
challengeType: 11
videoId: VDYVFHBL1AM
+bilibiliIds:
+ aid: 890607366
+ bvid: BV1zP4y1h7FR
+ cid: 409011400
dashedName: numpy-arrays
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
index 93d2813af5..4c9de9fd31 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c156
title: Numpy 布尔值的数组
challengeType: 11
videoId: N1ttsMmcVMM
+bilibiliIds:
+ aid: 208091324
+ bvid: BV1Qh411p7V8
+ cid: 409012711
dashedName: numpy-boolean-arrays
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
index b7bbc92430..6e3c3df58a 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c152
title: Numpy 简介 A
challengeType: 11
videoId: P-JjV6GBCmk
+bilibiliIds:
+ aid: 718079611
+ bvid: BV18Q4y1k7om
+ cid: 409007080
dashedName: numpy-introduction-a
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
index 6188c1f81b..085a88551d 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c153
title: Numpy 简介 B
challengeType: 11
videoId: YIqgrNLAZkA
+bilibiliIds:
+ aid: 250503382
+ bvid: BV1kv411w7vB
+ cid: 409010193
dashedName: numpy-introduction-b
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
index fc7dff6583..b82b3466b9 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c155
title: Numpy 的运算
challengeType: 11
videoId: eqSVcJbaPdk
+bilibiliIds:
+ aid: 378057123
+ bvid: BV13f4y1w7od
+ cid: 409012507
dashedName: numpy-operations
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
index 93ec246e45..b768ecd359 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15b
title: Pandas 条件选择和 DataFrames 的修改
challengeType: 11
videoId: BFlH0fN5xRQ
+bilibiliIds:
+ aid: 505598518
+ bvid: BV1vg411c72y
+ cid: 409113534
dashedName: pandas-conditional-selection-and-modifying-dataframes
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
index df5ffb6df6..7dfb9f58c4 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15c
title: Pandas 创建列
challengeType: 11
videoId: _sSo2XZoB3E
+bilibiliIds:
+ aid: 975568901
+ bvid: BV1b44y1b7Cg
+ cid: 409018052
dashedName: pandas-creating-columns
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
index 5f90574945..6d591279d8 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15a
title: Pandas DataFrames
challengeType: 11
videoId: 7SgFBYXaiH0
+bilibiliIds:
+ aid: 890503235
+ bvid: BV1TP4y1h7qq
+ cid: 409014039
dashedName: pandas-dataframes
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
index 77eb5b040a..00d0a5f197 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c159
title: Pandas 索引和条件选择
challengeType: 11
videoId: '-ZOrgV_aA9A'
+bilibiliIds:
+ aid: 720604139
+ bvid: BV1FQ4y1k7tC
+ cid: 409013650
dashedName: pandas-indexing-and-conditional-selection
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
index 5d0f59f6c1..75d05968db 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c158
title: Pandas 简介
challengeType: 11
videoId: 0xACW-8cZU0
+bilibiliIds:
+ aid: 975510116
+ bvid: BV1u44y1b7fD
+ cid: 409013433
dashedName: pandas-introduction
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
index c222c7abc9..0ff2a8ee47 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c166
title: Python 函数和集合
challengeType: 11
videoId: NzpU17ZVlUw
+bilibiliIds:
+ aid: 675544435
+ bvid: BV1pU4y1N7JC
+ cid: 409023833
dashedName: python-functions-and-collections
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
index c9e2078c58..99052f2c79 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c165
title: Python 简介
challengeType: 11
videoId: PrQV9JkLhb4
+bilibiliIds:
+ aid: 805597530
+ bvid: BV1634y1S7gD
+ cid: 409023550
dashedName: python-introduction
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
index 5dfc4f7aff..c6f6b1e24b 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c167
title: Python 迭代和模块
challengeType: 11
videoId: XzosGWLafrY
+bilibiliIds:
+ aid: 633068913
+ bvid: BV1db4y127M4
+ cid: 409024056
dashedName: python-iteration-and-modules
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
index 84b9829df3..786dd15d89 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed4
title: '访问与更改元素、行和列'
challengeType: 11
videoId: v-7Y7koJ_N0
+bilibiliIds:
+ aid: 590517748
+ bvid: BV1Eq4y1f7Fa
+ cid: 409025392
dashedName: accessing-and-changing-elements-rows-columns
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/basics-of-numpy.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/basics-of-numpy.md
index 3541050a5c..eb02227645 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/basics-of-numpy.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/basics-of-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed3
title: Numpy 的基础知识
challengeType: 11
videoId: f9QrZrKQMLI
+bilibiliIds:
+ aid: 763014202
+ bvid: BV1K64y1a7bu
+ cid: 409025169
dashedName: basics-of-numpy
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/copying-arrays-warning.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/copying-arrays-warning.md
index 9caa41d2b8..3d06596838 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/copying-arrays-warning.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/copying-arrays-warning.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed7
title: 复制数组警告
challengeType: 11
videoId: iIoQ0_L0GvA
+bilibiliIds:
+ aid: 633008569
+ bvid: BV1Bb4y127fb
+ cid: 409026161
dashedName: copying-arrays-warning
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initialize-array-problem.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initialize-array-problem.md
index 347ad52689..a4b5f2f479 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initialize-array-problem.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initialize-array-problem.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed6
title: 初始化数组问题
challengeType: 11
videoId: 0jGfH8BPfOk
+bilibiliIds:
+ aid: 763027834
+ bvid: BV1w64y1a7eo
+ cid: 409025878
dashedName: initialize-array-problem
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initializing-different-arrays.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initializing-different-arrays.md
index 199f5dc752..7033dc36d2 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initializing-different-arrays.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/initializing-different-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed5
title: 初始化不同的数组
challengeType: 11
videoId: CEykdsKT4U4
+bilibiliIds:
+ aid: 718044756
+ bvid: BV1MQ4y1k7BB
+ cid: 409025638
dashedName: initializing-different-arrays
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
index 459d45d3f3..a318f85c2d 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600eda
title: 加载数据和高级索引
challengeType: 11
videoId: tUdBZ7pF8Jg
+bilibiliIds:
+ aid: 720524642
+ bvid: BV1xQ4y1r7mu
+ cid: 409027117
dashedName: loading-data-and-advanced-indexing
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/mathematics.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/mathematics.md
index 1745fc2d40..d7253422e6 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/mathematics.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/mathematics.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed8
title: 数学
challengeType: 11
videoId: 7txegvyhtVk
+bilibiliIds:
+ aid: 890533226
+ bvid: BV1KP4y1h733
+ cid: 409026503
dashedName: mathematics
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/reorganizing-arrays.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/reorganizing-arrays.md
index 44a77fb4bc..dcb4a744b6 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/reorganizing-arrays.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/reorganizing-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed9
title: 重组数组
challengeType: 11
videoId: VNWAQbEM-C8
+bilibiliIds:
+ aid: 548035655
+ bvid: BV1fq4y1N7aC
+ cid: 409026755
dashedName: reorganizing-arrays
---
diff --git a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/what-is-numpy.md b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/what-is-numpy.md
index e35287fff2..b3664901cb 100644
--- a/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/what-is-numpy.md
+++ b/curriculum/challenges/chinese/08-data-analysis-with-python/numpy/what-is-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed2
title: Numpy 是什么?
challengeType: 11
videoId: 5Nwfs5Ej85Q
+bilibiliIds:
+ aid: 293086867
+ bvid: BV1Tf4y1E7QZ
+ cid: 409024791
dashedName: what-is-numpy
---
diff --git a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
index 08c7e5ba9b..d5c8ab1cbc 100644
--- a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
+++ b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db0
title: 创建一个 TCP 客户端
challengeType: 11
videoId: ugYfJNTawks
+bilibiliIds:
+ aid: 933058124
+ bvid: BV16M4y1g7zL
+ cid: 409034338
dashedName: creating-a-tcp-client
---
diff --git a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
index 3e97114446..7c62a26813 100644
--- a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
+++ b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db3
title: 开发横幅抓取器
challengeType: 11
videoId: CeGW761BIsA
+bilibiliIds:
+ aid: 633014533
+ bvid: BV1Sb4y127H9
+ cid: 409036288
dashedName: developing-a-banner-grabber
---
diff --git a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
index f0c64c870b..dc427a092c 100644
--- a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
+++ b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db4
title: 开发一个端口扫描器
challengeType: 11
videoId: z_qkqZS7KZ4
+bilibiliIds:
+ aid: 208077317
+ bvid: BV1Uh411p7HS
+ cid: 409036706
dashedName: developing-a-port-scanner
---
diff --git a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
index 0779aeb928..e3249fa924 100644
--- a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
+++ b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db1
title: 开发 Nmap 扫描器 第一部分
challengeType: 11
videoId: jYk9XaGoAnk
+bilibiliIds:
+ aid: 805657338
+ bvid: BV1o34y1S7zf
+ cid: 414718986
dashedName: developing-an-nmap-scanner-part-1
---
diff --git a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
index a17feae848..192a19ee96 100644
--- a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
+++ b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db2
title: 开发 Nmap 扫描器 第二部分
challengeType: 11
videoId: a98PscnUsTg
+bilibiliIds:
+ aid: 505526943
+ bvid: BV1Hg411c7oE
+ cid: 409034761
dashedName: developing-an-nmap-scanner-part-2
---
diff --git a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/introduction-and-setup.md b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/introduction-and-setup.md
index faebfea91c..f72fdc983b 100644
--- a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/introduction-and-setup.md
+++ b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/introduction-and-setup.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94dae
title: 介绍和安装
challengeType: 11
videoId: XeQ7ZKtb998
+bilibiliIds:
+ aid: 718017704
+ bvid: BV13Q4y1k7hX
+ cid: 409033630
dashedName: introduction-and-setup
---
diff --git a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
index e451188dfa..62b8792c1c 100644
--- a/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
+++ b/curriculum/challenges/chinese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94daf
title: 了解套接字并创建 TCP 服务器
challengeType: 11
videoId: F1QI9tNuDQg
+bilibiliIds:
+ aid: 848005038
+ bvid: BV1bL4y1a7kJ
+ cid: 409034113
dashedName: understanding-sockets-and-creating-a-tcp-server
---
diff --git a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md
index 2863f66aa1..1e49943851 100644
--- a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md
+++ b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-137-fibonacci-golden-nuggets.md
@@ -1,6 +1,6 @@
---
id: 5900f3f51000cf542c50ff08
-title: 'Problem 137: Fibonacci golden nuggets'
+title: '问题 137:斐波那契金块'
challengeType: 5
forumTopicId: 301765
dashedName: problem-137-fibonacci-golden-nuggets
@@ -8,30 +8,34 @@ dashedName: problem-137-fibonacci-golden-nuggets
# --description--
-Consider the infinite polynomial series AF(x) = xF1 + x2F2 + x3F3 + ..., where Fk is the kth term in the Fibonacci sequence: 1, 1, 2, 3, 5, 8, ... ; that is, Fk = Fk−1 + Fk−2, F1 = 1 and F2 = 1.
+考虑无穷级数 $A_{F}(x) = xF_1 + x^2F_2 + x^3F_3 + \ldots$,其中 $F_k$ 是斐波那契数列 $1, 1, 2, 3, 5, 8, \ldots$ 的第 $k$ 项;即 $F_k = F_{k − 1} + F_{k − 2}, F_1 = 1$,$F_2 = 1$。
-For this problem we shall be interested in values of x for which AF(x) is a positive integer.
+在这个问题中,我们关注的是那些使得 $A_{F}(x)$ 为正整数的 $x$ 的值。
-Surprisingly AF(1/2)
+令人惊讶的是:
-=
+$$\begin{align} A_F(\frac{1}{2}) & = (\frac{1}{2}) × 1 + {(\frac{1}{2})}^2 × 1 + {(\frac{1}{2})}^3 × 2 + {(\frac{1}{2})}^4 × 3 + {(\frac{1}{2})}^5 × 5 + \cdots \\\\ & = \frac{1}{2} + \frac{1}{4} + \frac{2}{8} + \frac{3}{16} + \frac{5}{32} + \cdots \\\\ & = 2 \end{align}$$
-(1/2).1 + (1/2)2.1 + (1/2)3.2 + (1/2)4.3 + (1/2)5.5 + ...
+前五个对应的自然数 $x$ 如下。
-= 1/2 + 1/4 + 2/8 + 3/16 + 5/32 + ...
+| $x$ | $A_F(x)$ |
+| --------------------------- | -------- |
+| $\sqrt{2} − 1$ | $1$ |
+| $\frac{1}{2}$ | $2$ |
+| $\frac{\sqrt{13} − 2}{3}$ | $3$ |
+| $\frac{\sqrt{89} − 5}{8}$ | $4$ |
+| $\frac{\sqrt{34} − 3}{5}$ | $5$ |
-= 2 The corresponding values of x for the first five natural numbers are shown below.
+当 $x$ 是有理数时,我们称 $A_F(x)$ 是一个金砖,因为这样的数字逐渐变得稀少;例如,第 10 个金砖是 74049690。
-xAF(x) √2−11 1/22 (√13−2)/33 (√89−5)/84 (√34−3)/55
-
-We shall call AF(x) a golden nugget if x is rational, because they become increasingly rarer; for example, the 10th golden nugget is 74049690. Find the 15th golden nugget.
+请求出第 15 个金砖。
# --hints--
-`euler137()` should return 1120149658760.
+`goldenNugget()` 应该返回 `1120149658760`。
```js
-assert.strictEqual(euler137(), 1120149658760);
+assert.strictEqual(goldenNugget(), 1120149658760);
```
# --seed--
@@ -39,12 +43,12 @@ assert.strictEqual(euler137(), 1120149658760);
## --seed-contents--
```js
-function euler137() {
+function goldenNugget() {
return true;
}
-euler137();
+goldenNugget();
```
# --solutions--
diff --git a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md
index 807f362857..619a31ee72 100644
--- a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md
+++ b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-14-longest-collatz-sequence.md
@@ -1,6 +1,6 @@
---
id: 5900f37a1000cf542c50fe8d
-title: 'Problem 14: Longest Collatz sequence'
+title: '问题 14:最长考拉兹序列'
challengeType: 5
forumTopicId: 301768
dashedName: problem-14-longest-collatz-sequence
@@ -8,61 +8,61 @@ dashedName: problem-14-longest-collatz-sequence
# --description--
-The following iterative sequence is defined for the set of positive integers:
+对正整数集定义如下迭代序列:
-n → n/2 (n is even)
+n → n / 2(n 为偶数)
-n → 3n + 1 (n is odd)
+n → 3n + 1(n 为奇数)
-Using the rule above and starting with 13, we generate the following sequence:
+从 13 开始使用上述规则,我们可以得到如下序列:
13 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 1
-It can be seen that this sequence (starting at 13 and finishing at 1) contains 10 terms. Although it has not been proved yet (Collatz Problem), it is thought that all starting numbers finish at 1.
+可以看出,该序列(从 13 开始到 1 结束)共包含 10 项。 虽然考拉兹猜想尚未得到证明,但是该猜想认为以任意数字开始,序列均到 1 结束。
-Which starting number, under the given `limit`, produces the longest chain?
+求出在小于 `limit` 的数中,哪个可以产生最长的考拉兹序列?
-**Note:** Once the chain starts the terms are allowed to go above one million.
+**注意:** 序列中数字的个数允许超过一百万。
# --hints--
-`longestCollatzSequence(14)` should return a number.
+`longestCollatzSequence(14)` 应该返回一个数字。
```js
assert(typeof longestCollatzSequence(14) === 'number');
```
-`longestCollatzSequence(14)` should return 9.
+`longestCollatzSequence(14)` 应该返回 9。
```js
assert.strictEqual(longestCollatzSequence(14), 9);
```
-`longestCollatzSequence(5847)` should return 3711.
+`longestCollatzSequence(5847)` 应该返回 3711。
```js
assert.strictEqual(longestCollatzSequence(5847), 3711);
```
-`longestCollatzSequence(46500)` should return 35655.
+`longestCollatzSequence(46500)` 应该返回 35655。
```js
assert.strictEqual(longestCollatzSequence(46500), 35655);
```
-`longestCollatzSequence(54512)` should return 52527.
+`longestCollatzSequence(54512)` 应该返回 52527。
```js
assert.strictEqual(longestCollatzSequence(54512), 52527);
```
-`longestCollatzSequence(100000)` should return 77031.
+`longestCollatzSequence(100000)` 应该返回 77031。
```js
assert.strictEqual(longestCollatzSequence(100000), 77031);
```
-`longestCollatzSequence(1000000)` should return 837799.
+`longestCollatzSequence(1000000)` 应该返回 837799。
```js
assert.strictEqual(longestCollatzSequence(1000000), 837799);
diff --git a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md
index 4bcd7e069a..a70d0f5ecf 100644
--- a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md
+++ b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-141-investigating-progressive-numbers-n-which-are-also-square.md
@@ -1,6 +1,6 @@
---
id: 5900f3f91000cf542c50ff0b
-title: 'Problem 141: Investigating progressive numbers, n, which are also square'
+title: '问题 141:累进平方数 n'
challengeType: 5
forumTopicId: 301770
dashedName: problem-141-investigating-progressive-numbers-n-which-are-also-square
@@ -8,22 +8,22 @@ dashedName: problem-141-investigating-progressive-numbers-n-which-are-also-squar
# --description--
-A positive integer, n, is divided by d and the quotient and remainder are q and r respectively. In addition d, q, and r are consecutive positive integer terms in a geometric sequence, but not necessarily in that order.
+一个正整数 $n$ 除以 $d$ 后得到商 $q$ 和余数 $r$。 同时 $d$,$q$ 和 $r$ 是一个等比数列中三个连续的正整数项,但顺序不要求一致。
-For example, 58 divided by 6 has quotient 9 and remainder 4. It can also be seen that 4, 6, 9 are consecutive terms in a geometric sequence (common ratio 3/2).
+例如,58 除以 6 后得到商 9 和余数 4。 可以发现,4、6、9 构成一个等比数列的连续三项(公比为 $\frac{3}{2}$)。
-We will call such numbers, n, progressive.
+我们称这样的数字 $n$ 为累进数。
-Some progressive numbers, such as 9 and 10404 = 1022, happen to also be perfect squares. The sum of all progressive perfect squares below one hundred thousand is 124657.
+一些累进数,如 9 和 10404 = ${102}^2$,同时也是完全平方数。 所有小于十万的累进平方数之和为 124657。
-Find the sum of all progressive perfect squares below one trillion (1012).
+请求出所有小于一万亿(${10}^{12}$)累进平方数之和。
# --hints--
-`euler141()` should return 878454337159.
+`progressivePerfectSquares()` 应该返回 `878454337159`。
```js
-assert.strictEqual(euler141(), 878454337159);
+assert.strictEqual(progressivePerfectSquares(), 878454337159);
```
# --seed--
@@ -31,12 +31,12 @@ assert.strictEqual(euler141(), 878454337159);
## --seed-contents--
```js
-function euler141() {
+function progressivePerfectSquares() {
return true;
}
-euler141();
+progressivePerfectSquares();
```
# --solutions--
diff --git a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md
index 03d921eac9..e26d7fa6da 100644
--- a/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md
+++ b/curriculum/challenges/chinese/10-coding-interview-prep/project-euler/problem-142-perfect-square-collection.md
@@ -1,6 +1,6 @@
---
id: 5900f3fa1000cf542c50ff0d
-title: 'Problem 142: Perfect Square Collection'
+title: '问题 142:完全平方数合集'
challengeType: 5
forumTopicId: 301771
dashedName: problem-142-perfect-square-collection
@@ -8,14 +8,14 @@ dashedName: problem-142-perfect-square-collection
# --description--
-Find the smallest x + y + z with integers x > y > z > 0 such that x + y, x − y, x + z, x − z, y + z, y − z are all perfect squares.
+请找出最小的 $x + y + z$,其中整数 $x > y > z > 0$ 需要满足 $x + y$、$x − y$、$x + z$、$x − z$、$y + z$、$y − z$ 均为完全平方数。
# --hints--
-`euler142()` should return 1006193.
+`perfectSquareCollection()` 应该返回 `1006193`。
```js
-assert.strictEqual(euler142(), 1006193);
+assert.strictEqual(perfectSquareCollection(), 1006193);
```
# --seed--
@@ -23,12 +23,12 @@ assert.strictEqual(euler142(), 1006193);
## --seed-contents--
```js
-function euler142() {
+function perfectSquareCollection() {
return true;
}
-euler142();
+perfectSquareCollection();
```
# --solutions--
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/conclusion.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/conclusion.md
index 48c4ea3fd3..c1b11a1bed 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/conclusion.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/conclusion.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da6
title: 结论
challengeType: 11
videoId: LMNub5frQi4
+bilibiliIds:
+ aid: 208033449
+ bvid: BV1Wh411p79h
+ cid: 409139716
dashedName: conclusion
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
index 46d929b19b..173fe64346 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d99
title: '卷积神经网络:评估模型'
challengeType: 11
videoId: eCATNvwraXg
+bilibiliIds:
+ aid: 933030136
+ bvid: BV1hM4y1g7Bx
+ cid: 409132265
dashedName: convolutional-neural-networks-evaluating-the-model
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
index 824ff35a4c..efd6d4cb78 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9a
title: '卷积神经网络:选择预训练模型'
challengeType: 11
videoId: h1XUt1AgIOI
+bilibiliIds:
+ aid: 463063633
+ bvid: BV1qL411x73q
+ cid: 409132626
dashedName: convolutional-neural-networks-picking-a-pretrained-model
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
index 1bc1579239..8878f963b6 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d97
title: '卷积神经网络:卷积层'
challengeType: 11
videoId: LrdmcQpTyLw
+bilibiliIds:
+ aid: 805608595
+ bvid: BV1Q34y1S7nr
+ cid: 409131585
dashedName: convolutional-neural-networks-the-convolutional-layer
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
index 1d8c1288ca..c5eb9fb612 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d96
title: 卷积神经网络
challengeType: 11
videoId: _1kTP7uoU9E
+bilibiliIds:
+ aid: 805604251
+ bvid: BV1D34y1S7zS
+ cid: 409131358
dashedName: convolutional-neural-networks
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
index 35b1f5cba7..ac90eede4f 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8e
title: '核心学习算法:构建模型'
challengeType: 11
videoId: 5wHw8BTd2ZQ
+bilibiliIds:
+ aid: 763068584
+ bvid: BV1s64y1a7WR
+ cid: 409128675
dashedName: core-learning-algorithms-building-the-model
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
index 7256e34b1e..3a996fb6d5 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8d
title: '核心学习算法:分类'
challengeType: 11
videoId: qFF7ZQNvK9E
+bilibiliIds:
+ aid: 505531167
+ bvid: BV1Vg411c7av
+ cid: 409128427
dashedName: core-learning-algorithms-classification
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
index f8021e514b..d8a9141a60 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8f
title: '核心学习算法:聚类'
challengeType: 11
videoId: 8sqIaHc9Cz4
+bilibiliIds:
+ aid: 720567137
+ bvid: BV1BQ4y1r7UY
+ cid: 409129005
dashedName: core-learning-algorithms-clustering
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
index d58f2b9f9a..9fdacf0b75 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d90
title: '核心学习算法:隐马尔可夫模型'
challengeType: 11
videoId: IZg24y4wEPY
+bilibiliIds:
+ aid: 633081400
+ bvid: BV1tb4y1y72V
+ cid: 409129376
dashedName: core-learning-algorithms-hidden-markov-models
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
index db6691f1f8..3f24e69179 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8c
title: '核心学习算法:训练过程'
challengeType: 11
videoId: _cEwvqVoBhI
+bilibiliIds:
+ aid: 335593652
+ bvid: BV12R4y1H7Fi
+ cid: 409128047
dashedName: core-learning-algorithms-the-training-process
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
index 2ec66a7296..683b6941d8 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8b
title: '核心学习算法:训练和测试数据'
challengeType: 11
videoId: wz9J1slsi7I
+bilibiliIds:
+ aid: 335509743
+ bvid: BV1rA411F7bG
+ cid: 409127635
dashedName: core-learning-algorithms-training-and-testing-data
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
index 03367fd9fa..8e1798002f 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d91
title: '核心学习算法:使用概率进行预测'
challengeType: 11
videoId: fYAYvLUawnc
+bilibiliIds:
+ aid: 763245369
+ bvid: BV1B64y187gE
+ cid: 414731624
dashedName: core-learning-algorithms-using-probabilities-to-make-predictions
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
index cec3879baa..efb5a31ae6 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8a
title: '核心学习算法:处理数据'
challengeType: 11
videoId: u85IOSsJsPI
+bilibiliIds:
+ aid: 675550447
+ bvid: BV1RU4y1w7up
+ cid: 409127383
dashedName: core-learning-algorithms-working-with-data
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
index 742bcdd672..c87d7e6615 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d89
title: 核心学习算法
challengeType: 11
videoId: u5lZURgcWnU
+bilibiliIds:
+ aid: 763034025
+ bvid: BV1A64y1a7g4
+ cid: 409127051
dashedName: core-learning-algorithms
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
index 1c98dcf6b2..7eb1bc76c9 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d98
title: 创建卷积神经网络
challengeType: 11
videoId: kfv0K8MtkIc
+bilibiliIds:
+ aid: 420605824
+ bvid: BV1p341127wW
+ cid: 409131869
dashedName: creating-a-convolutional-neural-network
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
index fe9866d1e2..dafdd5c1cf 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d87
title: '简介:机器学习基础'
challengeType: 11
videoId: KwL1qTR5MT8
+bilibiliIds:
+ aid: 293071716
+ bvid: BV1Yf4y1n7R2
+ cid: 409125921
dashedName: introduction-machine-learning-fundamentals
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
index e7191ff760..4a388698ce 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d88
title: TensorFlow 简介
challengeType: 11
videoId: r9hRyGGjOgQ
+bilibiliIds:
+ aid: 675554869
+ bvid: BV1dU4y1w7vw
+ cid: 409126541
dashedName: introduction-to-tensorflow
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
index c961707393..3dacb8f77e 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da1
title: '使用 RNN 处理自然语言:构建模型'
challengeType: 11
videoId: 32WBFS7lfsw
+bilibiliIds:
+ aid: 848015573
+ bvid: BV1YL4y1a7WS
+ cid: 409138016
dashedName: natural-language-processing-with-rnns-building-the-model
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
index db11e4e2e1..dee688fe84 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da0
title: '使用 RNN 进行自然语言处理:创建戏剧生成器'
challengeType: 11
videoId: j5xsxjq_Xk8
+bilibiliIds:
+ aid: 720525759
+ bvid: BV1xQ4y1r7tw
+ cid: 409137674
dashedName: natural-language-processing-with-rnns-create-a-play-generator
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
index 97f45d9cb5..8680433634 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9f
title: '使用 RNN 进行自然语言处理:进行预测'
challengeType: 11
videoId: WO1hINnBj20
+bilibiliIds:
+ aid: 848023400
+ bvid: BV1WL4y1a75i
+ cid: 409136303
dashedName: natural-language-processing-with-rnns-making-predictions
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
index d80cf5164b..c702a0f96c 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9c
title: '使用 RNN 进行自然语言处理:第 2 部分'
challengeType: 11
videoId: mUU9YXOFbZg
+bilibiliIds:
+ aid: 975558435
+ bvid: BV1L44y1b7Lp
+ cid: 409135242
dashedName: natural-language-processing-with-rnns-part-2
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
index 4391131530..3aafe8c4b2 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9d
title: '使用 RNN 进行自然语言处理:循环神经网络'
challengeType: 11
videoId: bX5681NPOcA
+bilibiliIds:
+ aid: 335605808
+ bvid: BV1SR4y1H7ri
+ cid: 409135641
dashedName: natural-language-processing-with-rnns-recurring-neural-networks
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
index c20dfcb727..95ab105376 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9e
title: '使用 RNN 进行自然语言处理:情感分析'
challengeType: 11
videoId: lYeLtu8Nq7c
+bilibiliIds:
+ aid: 933111408
+ bvid: BV1TM4y137VB
+ cid: 409135996
dashedName: natural-language-processing-with-rnns-sentiment-analysis
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
index e9c35e3fe5..45264237f3 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da2
title: '使用 RNN 进行自然语言处理:训练模型'
challengeType: 11
videoId: hEUiK7j9UI8
+bilibiliIds:
+ aid: 250542136
+ bvid: BV19v411w7Fi
+ cid: 409138327
dashedName: natural-language-processing-with-rnns-training-the-model
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
index 94fc464f24..57baffd15d 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9b
title: 使用 RNN 的自然语言处理
challengeType: 11
videoId: ZyCaF5S-lKg
+bilibiliIds:
+ aid: 548105306
+ bvid: BV1nq4y1K7VU
+ cid: 409134745
dashedName: natural-language-processing-with-rnns
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
index 28b9af4c4c..96ac34bf0d 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d93
title: '神经网络:激活函数'
challengeType: 11
videoId: S45tqW6BqRs
+bilibiliIds:
+ aid: 675610466
+ bvid: BV1wU4y1A7TJ
+ cid: 409130203
dashedName: neural-networks-activation-functions
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
index b1f7ca6138..9150343861 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d95
title: '神经网络:创建模型'
challengeType: 11
videoId: K8bz1bmOCTw
+bilibiliIds:
+ aid: 848109040
+ bvid: BV1EL4y1878f
+ cid: 409130886
dashedName: neural-networks-creating-a-model
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
index db9ce7e353..df0792953a 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d94
title: '神经网络:优化'
challengeType: 11
videoId: hdOtRPQe1o4
+bilibiliIds:
+ aid: 763064173
+ bvid: BV1364y1a7eM
+ cid: 409130557
dashedName: neural-networks-optimizers
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
index 70bb69de1a..4a277c32a3 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d92
title: 使用 TensorFlow 的神经网络
challengeType: 11
videoId: uisdfrNrZW4
+bilibiliIds:
+ aid: 378031840
+ bvid: BV1Qf4y1c7Dc
+ cid: 409129888
dashedName: neural-networks-with-tensorflow
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
index 4f8ce8f41f..e86caf5ab2 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da5
title: '使用 Q-Learning 进行强化学习:示例'
challengeType: 11
videoId: RBBSNta234s
+bilibiliIds:
+ aid: 848073871
+ bvid: BV1uL4y187Eq
+ cid: 409139471
dashedName: reinforcement-learning-with-q-learning-example
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
index b548e9add2..7efb5cef90 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da4
title: '使用 Q-Learning 进行强化学习:第 2 部分'
challengeType: 11
videoId: DX7hJuaUZ7o
+bilibiliIds:
+ aid: 420570359
+ bvid: BV1G341127zr
+ cid: 409139190
dashedName: reinforcement-learning-with-q-learning-part-2
---
diff --git a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
index cab6d59a09..e57018714d 100644
--- a/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
+++ b/curriculum/challenges/chinese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da3
title: 使用 Q-Learning 进行强化学习
challengeType: 11
videoId: Cf7DSU0gVb4
+bilibiliIds:
+ aid: 463025802
+ bvid: BV1iL411x7L6
+ cid: 409138811
dashedName: reinforcement-learning-with-q-learning
---
diff --git a/curriculum/challenges/espanol/01-responsive-web-design/basic-css/size-your-images.md b/curriculum/challenges/espanol/01-responsive-web-design/basic-css/size-your-images.md
index 07ec1f876e..0d9a47198f 100644
--- a/curriculum/challenges/espanol/01-responsive-web-design/basic-css/size-your-images.md
+++ b/curriculum/challenges/espanol/01-responsive-web-design/basic-css/size-your-images.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9acdf08812
title: Cambia el tamaño de tus imágenes
challengeType: 0
-videoUrl: 'https://scrimba.com/c/cM9MmCP'
forumTopicId: 18282
dashedName: size-your-images
---
diff --git a/curriculum/challenges/espanol/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md b/curriculum/challenges/espanol/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
index 1994ca2e2d..75a8b8bcc4 100644
--- a/curriculum/challenges/espanol/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
+++ b/curriculum/challenges/espanol/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9aedf08812
title: Agrega imágenes a tu sitio web
challengeType: 0
-videoUrl: 'https://scrimba.com/p/pVMPUv/c8EbJf2'
forumTopicId: 16640
dashedName: add-images-to-your-website
---
diff --git a/curriculum/challenges/espanol/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md b/curriculum/challenges/espanol/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
index 8ff22ca778..49d3dd9a5d 100644
--- a/curriculum/challenges/espanol/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
+++ b/curriculum/challenges/espanol/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
@@ -2,7 +2,6 @@
id: 567af2437cbaa8c51670a16c
title: Verifica las propiedades de un objeto
challengeType: 1
-videoUrl: 'https://scrimba.com/c/c6Wz4ySr'
forumTopicId: 18324
dashedName: testing-objects-for-properties
---
diff --git a/curriculum/challenges/espanol/04-data-visualization/data-visualization-with-d3/add-inline-styling-to-elements.md b/curriculum/challenges/espanol/04-data-visualization/data-visualization-with-d3/add-inline-styling-to-elements.md
index 9c538755d7..504233da03 100644
--- a/curriculum/challenges/espanol/04-data-visualization/data-visualization-with-d3/add-inline-styling-to-elements.md
+++ b/curriculum/challenges/espanol/04-data-visualization/data-visualization-with-d3/add-inline-styling-to-elements.md
@@ -1,6 +1,6 @@
---
id: 587d7fa7367417b2b2512bc6
-title: Add Inline Styling to Elements
+title: Agrega elementos de estilización en línea
challengeType: 6
forumTopicId: 301475
dashedName: add-inline-styling-to-elements
@@ -8,9 +8,9 @@ dashedName: add-inline-styling-to-elements
# --description--
-D3 lets you add inline CSS styles on dynamic elements with the `style()` method.
+D3 te permite añadir estilos CSS en línea sobre elementos dinámicos con el método `style()`.
-The `style()` method takes a comma-separated key-value pair as an argument. Here's an example to set the selection's text color to blue:
+El método `style()` toma un par llave-valor separado por coma como argumento. Aquí hay un ejemplo para establecer el color de texto de la selección a azul:
```js
selection.style("color","blue");
@@ -18,17 +18,17 @@ selection.style("color","blue");
# --instructions--
-Add the `style()` method to the code in the editor to make all the displayed text have a `font-family` of `verdana`.
+Agrega el método `style()` al código en el editor para hacer que todo el texto mostrado tenga como `font-family` la fuente `verdana`.
# --hints--
-Your `h2` elements should have a `font-family` of `verdana`.
+Tus elementos `h2` deben tener como `font-family` la fuente `verdana`.
```js
assert($('h2').css('font-family') == 'verdana');
```
-Your code should use the `style()` method.
+Tu código debe utilizar el método `style()`.
```js
assert(code.match(/\.style/g));
diff --git a/curriculum/challenges/italian/01-responsive-web-design/basic-css/size-your-images.md b/curriculum/challenges/italian/01-responsive-web-design/basic-css/size-your-images.md
index b37d12b62a..6c63d9b901 100644
--- a/curriculum/challenges/italian/01-responsive-web-design/basic-css/size-your-images.md
+++ b/curriculum/challenges/italian/01-responsive-web-design/basic-css/size-your-images.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9acdf08812
title: Dimensionare le immagini
challengeType: 0
-videoUrl: 'https://scrimba.com/c/cM9MmCP'
forumTopicId: 18282
dashedName: size-your-images
---
diff --git a/curriculum/challenges/italian/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md b/curriculum/challenges/italian/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
index 16d61ed32a..a7ac814057 100644
--- a/curriculum/challenges/italian/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
+++ b/curriculum/challenges/italian/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
@@ -2,7 +2,6 @@
id: 567af2437cbaa8c51670a16c
title: Verificare la presenza delle proprietà degli oggetti
challengeType: 1
-videoUrl: 'https://scrimba.com/c/c6Wz4ySr'
forumTopicId: 18324
dashedName: testing-objects-for-properties
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
index 17d3e7f161..3e43103d30 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05b
title: Costruire le proprie funzioni
challengeType: 11
videoId: nLDychdBwUg
+bilibiliIds:
+ aid: 249487483
+ bvid: BV1Fv411J7bS
+ cid: 376340281
dashedName: build-your-own-functions
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
index 71108f828e..f13b1bb4cb 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06d
title: Confrontare e ordinare tuple
challengeType: 11
videoId: dZXzBXUxxCs
+bilibiliIds:
+ aid: 931886163
+ bvid: BV1HM4y1T7TK
+ cid: 376533673
dashedName: comparing-and-sorting-tuples
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
index 47407eef1f..d0c0e8ae6d 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f058
title: Esecuzione condizionale
challengeType: 11
videoId: gz_IfIsZQtc
+bilibiliIds:
+ aid: 206949935
+ bvid: BV1Jh411z7bY
+ cid: 376337035
dashedName: conditional-execution
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
index 7b0c75f40c..9de9e5b4b5 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f097
title: 'Data Visualization: Mailing List'
challengeType: 11
videoId: RYdW660KkaQ
+bilibiliIds:
+ aid: 334465586
+ bvid: BV18w411R7dD
+ cid: 377545473
dashedName: data-visualization-mailing-lists
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
index 99e4cbfc28..63f9c2b6bd 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f096
title: 'Data Visualization: Page Rank'
challengeType: 11
videoId: 6-w_qIUwaxU
+bilibiliIds:
+ aid: 376950472
+ bvid: BV1ho4y1Q72u
+ cid: 377544599
dashedName: data-visualization-page-rank
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
index 5266cff509..7762caf350 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f069
title: Dizionari e cicli
challengeType: 11
videoId: EEmekKiKG70
+bilibiliIds:
+ aid: 589401038
+ bvid: BV1eq4y1X7xU
+ cid: 376387132
dashedName: dictionaries-and-loops
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
index 9789587fcd..0a84d7b615 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f068
title: 'Dizionari: applicazioni comuni'
challengeType: 11
videoId: f17xPfIXct0
+bilibiliIds:
+ aid: 805747023
+ bvid: BV1v34y1D7ug
+ cid: 414168867
dashedName: dictionaries-common-applications
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
index 4c552f8d30..f802fc8535 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f063
title: File come sequenze
challengeType: 11
videoId: cIA0EokbaHE
+bilibiliIds:
+ aid: 974380307
+ bvid: BV1p44y1m7br
+ cid: 376388846
dashedName: files-as-a-sequence
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
index 69517a3dc4..0504cfd929 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f057
title: Espressioni Intermedie
challengeType: 11
videoId: dKgUaIa5ATg
+bilibiliIds:
+ aid: 334428894
+ bvid: BV1uw411R7gH
+ cid: 376318468
dashedName: intermediate-expressions
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
index 3261cb473f..e31e7e7139 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f061
title: Stringhe Intermedio
challengeType: 11
videoId: KgT_fYLXnyk
+bilibiliIds:
+ aid: 291983121
+ bvid: BV1Zf4y157yG
+ cid: 376394116
dashedName: intermediate-strings
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
index a548993dbe..8150d08459 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
@@ -3,6 +3,10 @@ id: 5e6a54c358d3af90110a60a3
title: 'Introduzione: elementi di Python'
challengeType: 11
videoId: aRY_xjL35v0
+bilibiliIds:
+ aid: 674420725
+ bvid: BV1MU4y1H7Lj
+ cid: 376315889
dashedName: introduction-elements-of-python
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
index de81adf1ab..5ab037855e 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
@@ -3,6 +3,10 @@ id: 5e6a54af58d3af90110a60a1
title: 'Introduzione: architettura hardware'
challengeType: 11
videoId: H6qtjRTfSog
+bilibiliIds:
+ aid: 206977572
+ bvid: BV1zh411z7Ak
+ cid: 376199262
dashedName: introduction-hardware-architecture
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
index 9caa3a6b20..b024ccc49c 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
@@ -3,6 +3,10 @@ id: 5e6a54ba58d3af90110a60a2
title: 'Introduzione: Python come linguaggio'
challengeType: 11
videoId: 0QeGbZNS_bY
+bilibiliIds:
+ aid: 674404602
+ bvid: BV1GU4y1H7vB
+ cid: 376315625
dashedName: introduction-python-as-a-language
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
index a32313c6df..8a9c956e19 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05d
title: 'Iterazioni: cicli definiti'
challengeType: 11
videoId: hiRTRAqNlpE
+bilibiliIds:
+ aid: 291987032
+ bvid: BV1ff4y157Q3
+ cid: 376385255
dashedName: iterations-definite-loops
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
index ce49be8778..7052ad5b2a 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05e
title: 'Iterazioni: idiomi dei cicli'
challengeType: 11
videoId: AelGAcoMXbI
+bilibiliIds:
+ aid: 334491369
+ bvid: BV1tw411R7Mm
+ cid: 376530765
dashedName: iterations-loop-idioms
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
index c9c2ba2ad7..4cdf7e6d77 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05f
title: 'Iterazioni: ulteriori modelli'
challengeType: 11
videoId: 9Wtqo6vha1M
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: iterations-more-patterns
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
index 384f9b7f87..034e942a2c 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05c
title: Cicli e iterazioni
challengeType: 11
videoId: dLA-szNRnUY
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: loops-and-iterations
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
index 936dac1a14..7589a2328e 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08b
title: Creare un database relazionale
challengeType: 11
videoId: MQ5z4bdF92U
+bilibiliIds:
+ aid: 249380678
+ bvid: BV1vv411E76L
+ cid: 377531786
dashedName: make-a-relational-database
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
index 5a524c5af7..df497a6db5 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f059
title: Ulteriori strutture condizionali
challengeType: 11
videoId: HdL82tAZR20
+bilibiliIds:
+ aid: 631930118
+ bvid: BV1Nb4y1r7z2
+ cid: 376337449
dashedName: more-conditional-structures
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
index a1537a3c30..d5ced5e283 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f072
title: Protocollo di rete
challengeType: 11
videoId: c6vZGescaSc
+bilibiliIds:
+ aid: 931950996
+ bvid: BV1cM4y1N7K6
+ cid: 376388317
dashedName: networking-protocol
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
index be9e593a40..a4945e0cb3 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f074
title: 'Networking: elaborazione del testo'
challengeType: 11
videoId: Pv_pJgVu8WI
+bilibiliIds:
+ aid: 804442498
+ bvid: BV16y4y1j7WW
+ cid: 377329124
dashedName: networking-text-processing
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
index 71f4c17ca1..0245577244 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f075
title: 'Networking: usare urllib in Python'
challengeType: 11
videoId: 7lFM1T_CxBs
+bilibiliIds:
+ aid: 546908270
+ bvid: BV1Xq4y1H7e6
+ cid: 377331524
dashedName: networking-using-urllib-in-python
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
index 6d64b8ae78..51c90fcdfe 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f076
title: 'Networking: web scraping con Python'
challengeType: 11
videoId: Uyioq2q4cEg
+bilibiliIds:
+ aid: 674382625
+ bvid: BV1oU4y1n7zQ
+ cid: 377331774
dashedName: networking-web-scraping-with-python
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
index e22c54095b..cff99d6629 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f071
title: Networking con Python
challengeType: 11
videoId: _kJvneKVdNM
+bilibiliIds:
+ aid: 419494612
+ bvid: BV1r341167jT
+ cid: 376385858
dashedName: networking-with-python
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
index af1d3a2a70..b04f7632e6 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f073
title: 'Networking: scrivi un browser web'
challengeType: 11
videoId: zjyT9DaAjx4
+bilibiliIds:
+ aid: 761908574
+ bvid: BV1j64y1x7wx
+ cid: 377319579
dashedName: networking-write-a-web-browser
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
index be6ef5ab46..68100ec991 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f087
title: Ciclo di vita degli oggetti
challengeType: 11
videoId: p1r3h_AMMIM
+bilibiliIds:
+ aid: 461998717
+ bvid: BV1JL411n7Hr
+ cid: 377529681
dashedName: object-lifecycle
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
index 966dbf8cfa..6c5097e979 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f086
title: 'Oggetti: una classe di esempio'
challengeType: 11
videoId: FiABKEuaSJ8
+bilibiliIds:
+ aid: 589451777
+ bvid: BV1rq4y1X7TG
+ cid: 377523194
dashedName: objects-a-sample-class
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
index 92b6f29af8..dd88d6bad9 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f088
title: 'Oggetti: ereditarietà'
challengeType: 11
videoId: FBL3alYrxRM
+bilibiliIds:
+ aid: 631990691
+ bvid: BV1sb4y1r7GF
+ cid: 377529901
dashedName: objects-inheritance
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
index a33a4db967..19fafda207 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f067
title: Dizionari in Python
challengeType: 11
videoId: dnzvfimrRMg
+bilibiliIds:
+ aid: 631893305
+ bvid: BV19b4y167kj
+ cid: 376386176
dashedName: python-dictionaries
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-functions.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-functions.md
index 23ae0ebd68..c2664475ba 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-functions.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05a
title: Funzioni in Python
challengeType: 11
videoId: 3JGF-n3tDPU
+bilibiliIds:
+ aid: 631881917
+ bvid: BV1Xb4y167P4
+ cid: 376337920
dashedName: python-functions
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-lists.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-lists.md
index 3bba50a37f..8ed26b7035 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-lists.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f064
title: Liste in Python
challengeType: 11
videoId: Y0cvfDpYC_c
+bilibiliIds:
+ aid: 249460305
+ bvid: BV1Dv411E7Uj
+ cid: 376532993
dashedName: python-lists
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-objects.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-objects.md
index 26b40fd3bd..ce55fe3391 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-objects.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/python-objects.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f085
title: Oggetti Python
challengeType: 11
videoId: uJxGeTYy0us
+bilibiliIds:
+ aid: 889496260
+ bvid: BV1ZP4y1s7G6
+ cid: 377522762
dashedName: python-objects
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/reading-files.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/reading-files.md
index 16c40e0dbc..b974e8c8d2 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/reading-files.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/reading-files.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f062
title: Leggere i file
challengeType: 11
videoId: Fo1tW09KIwo
+bilibiliIds:
+ aid: 334439927
+ bvid: BV1pw411R7UK
+ cid: 376532076
dashedName: reading-files
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
index 17dd667e41..783a1f6d50 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06f
title: 'Espressioni regolari: corrispondenza ed estrazione dei dati'
challengeType: 11
videoId: LaCZnTbQGkE
+bilibiliIds:
+ aid: 975629041
+ bvid: BV1i44y1b7hE
+ cid: 414167130
dashedName: regular-expressions-matching-and-extracting-data
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
index 70c69fa15f..84d5b65128 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f070
title: 'Espressioni regolari: applicazioni pratiche'
challengeType: 11
videoId: xCjFU9G6x48
+bilibiliIds:
+ aid: 546924659
+ bvid: BV1mq4y1H7rZ
+ cid: 376386493
dashedName: regular-expressions-practical-applications
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
index 8cad7a0d5f..8ebd49b36d 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06e
title: Espressioni regolari
challengeType: 11
videoId: Yud_COr6pZo
+bilibiliIds:
+ aid: 759422542
+ bvid: BV1W64y167YD
+ cid: 376387549
dashedName: regular-expressions
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
index 5fceba05c4..1252a5cfc5 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08c
title: Progettazione di database relazionali
challengeType: 11
videoId: AqdfbrpkbHk
+bilibiliIds:
+ aid: 504388066
+ bvid: BV1Qg411j742
+ cid: 377532216
dashedName: relational-database-design
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
index 3b9a09cf87..f040840da4 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08a
title: Database relazionali e SQLite
challengeType: 11
videoId: QlNod5-kFpA
+bilibiliIds:
+ aid: 249449958
+ bvid: BV12v411E74H
+ cid: 377530805
dashedName: relational-databases-and-sqlite
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
index 5287c4b372..1ec7d385f1 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08f
title: 'Database Relazionali: operazione Join'
challengeType: 11
videoId: jvDw3D9GKac
+bilibiliIds:
+ aid: 804461215
+ bvid: BV1Ry4y1j7tv
+ cid: 377542880
dashedName: relational-databases-join-operation
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
index 2f65b0ab70..085d861168 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
@@ -3,6 +3,10 @@ id: 5e7b9f190b6c005b0e76f090
title: 'Database Relazionali: relazioni molti-a-molti'
challengeType: 11
videoId: z-SBYcvEQOc
+bilibiliIds:
+ aid: 291965127
+ bvid: BV1Af4y1L7BK
+ cid: 377543409
dashedName: relational-databases-many-to-many-relationships
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
index 1f84df95f8..12c6bcf29e 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08e
title: 'Database relazionali: costruzione delle relazioni'
challengeType: 11
videoId: CSbqczsHVnc
+bilibiliIds:
+ aid: 376996473
+ bvid: BV1jo4y1S7VY
+ cid: 377532966
dashedName: relational-databases-relationship-building
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
index 45c5792f22..3abe324eac 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08d
title: Rappresentare le relazioni in un database relazionale
challengeType: 11
videoId: '-orenCNdC2Q'
+bilibiliIds:
+ aid: 931953070
+ bvid: BV1FM4y1N7hc
+ cid: 377532529
dashedName: representing-relationships-in-a-relational-database
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
index f8132460a7..535bddf779 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f066
title: Stringhe e liste
challengeType: 11
videoId: lxcFa7ldCi0
+bilibiliIds:
+ aid: 804401443
+ bvid: BV1By4y1j7F9
+ cid: 376385517
dashedName: strings-and-lists
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
index 053e2f4956..f6d3e57b97 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f060
title: Stringhe in Python
challengeType: 11
videoId: LYZj207fKpQ
+bilibiliIds:
+ aid: 504434218
+ bvid: BV1Lg41177s8
+ cid: 376531802
dashedName: strings-in-python
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
index f563c61c2a..3dce0d308e 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f06c
title: La collezione di tuple
challengeType: 11
videoId: 3Lxpladfh2k
+bilibiliIds:
+ aid: 334468209
+ bvid: BV1aw411R77G
+ cid: 376533308
dashedName: the-tuples-collection
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/using-web-services.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
index eb6c4e5415..d73aefa8ed 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07a
title: Usare i servizi web
challengeType: 11
videoId: oNl1OVDPGKE
+bilibiliIds:
+ aid: 759406136
+ bvid: BV1b64y16746
+ cid: 377332189
dashedName: using-web-services
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
index 2fff597efc..24a09d75cc 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f056
title: 'Variabili, espressioni e istruzioni'
challengeType: 11
videoId: nELR-uyyrok
+bilibiliIds:
+ aid: 419396811
+ bvid: BV1iV411p7Mn
+ cid: 376318116
dashedName: variables-expressions-and-statements
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
index 4418113e19..2985d8128d 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f690b6c005b0e76f095
title: Visualizzare i dati con Python
challengeType: 11
videoId: e3lydkH0prw
+bilibiliIds:
+ aid: 291996462
+ bvid: BV15f4y1L7jH
+ cid: 377544192
dashedName: visualizing-data-with-python
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
index 323ca91397..282271fe78 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f080
title: 'Servizi Web: limitazione delle richieste API e sicurezza'
challengeType: 11
videoId: pI-g0lI8ngs
+bilibiliIds:
+ aid: 249456172
+ bvid: BV1Sv411E7qa
+ cid: 377336269
dashedName: web-services-api-rate-limiting-and-security
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
index 7fa9cae3a7..68288f5c87 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f07f
title: 'Servizi Web: API'
challengeType: 11
videoId: oUNn1psfBJg
+bilibiliIds:
+ aid: 589451017
+ bvid: BV1zq4y1X7A9
+ cid: 377336011
dashedName: web-services-apis
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-json.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
index a2e28c6643..3fc4b47a8b 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07d
title: 'Servizi Web: JSON'
challengeType: 11
videoId: ZJE-U56BppM
+bilibiliIds:
+ aid: 419491911
+ bvid: BV1r3411672w
+ cid: 377332928
dashedName: web-services-json
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
index 65374989bf..bdd1e7646e 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07e
title: 'Servizi Web: approccio orientato ai servizi'
challengeType: 11
videoId: muerlsCHExI
+bilibiliIds:
+ aid: 846899335
+ bvid: BV1E54y1J7oz
+ cid: 377333277
dashedName: web-services-service-oriented-approach
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
index 510e4c1281..dbdeb13d48 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07c
title: 'Servizi Web: Schema XML'
challengeType: 11
videoId: yWU9kTxW-nc
+bilibiliIds:
+ aid: 631951466
+ bvid: BV1Vb4y1r7m7
+ cid: 377332603
dashedName: web-services-xml-schema
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
index d14ff3f24f..47fb04cafc 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07b
title: 'Servizi Web: XML'
challengeType: 11
videoId: _pZ0srbg7So
+bilibiliIds:
+ aid: 761920032
+ bvid: BV1n64y1x7KW
+ cid: 377332379
dashedName: web-services-xml
---
diff --git a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
index 260b84e2dc..a67f580270 100644
--- a/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
+++ b/curriculum/challenges/italian/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f065
title: Lavorare con le liste
challengeType: 11
videoId: lCnHfTHkhbE
+bilibiliIds:
+ aid: 376965958
+ bvid: BV1No4y1S7oi
+ cid: 376387989
dashedName: working-with-lists
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
index 32ed121c5e..92d3144460 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14d
title: Esempio A di analisi dei dati
challengeType: 11
videoId: nVAaxZ34khk
+bilibiliIds:
+ aid: 590571151
+ bvid: BV1sq4y1f7gr
+ cid: 409002372
dashedName: data-analysis-example-a
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
index 5bdd110db4..fa43c43558 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14e
title: Esempio B di analisi dei dati
challengeType: 11
videoId: 0kJz0q0pvgQ
+bilibiliIds:
+ aid: 505593432
+ bvid: BV1kg411c7M6
+ cid: 409003530
dashedName: data-analysis-example-b
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
index ea389f989d..8a769667de 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c160
title: Pulizia e visualizzazione dei dati
challengeType: 11
videoId: mHjxzFS5_Z0
+bilibiliIds:
+ aid: 933107558
+ bvid: BV1KM4y137Ny
+ cid: 409019632
dashedName: data-cleaning-and-visualizations
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
index 67f4e61a10..a9aacf0b47 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15f
title: Pulizia di dati duplicati
challengeType: 11
videoId: kj7QqjXhH6A
+bilibiliIds:
+ aid: 675611672
+ bvid: BV1VU4y1A7tu
+ cid: 409019368
dashedName: data-cleaning-duplicates
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
index 11fe0117a4..66327a2968 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15d
title: Introduzione alla pulizia dei dati
challengeType: 11
videoId: ovYNhnltVxY
+bilibiliIds:
+ aid: 250574398
+ bvid: BV1Pv411A7GN
+ cid: 409018611
dashedName: data-cleaning-introduction
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
index 81617bf988..f3b5fa1119 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15e
title: Pulizia dati con DataFrames
challengeType: 11
videoId: sTMN_pdI6S0
+bilibiliIds:
+ aid: 505597026
+ bvid: BV1Yg411c7bx
+ cid: 409018948
dashedName: data-cleaning-with-dataframes
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
index c66692453b..ca9d8d2396 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14f
title: Introduzione all'uso di Jupyter Notebooks
challengeType: 11
videoId: h8caJq2Bb9w
+bilibiliIds:
+ aid: 293035919
+ bvid: BV1Hf4y1n7qr
+ cid: 409002965
dashedName: how-to-use-jupyter-notebooks-intro
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
index 735202f214..dd6c0eb5bc 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14c
title: Introduzione all'analisi dei dati
challengeType: 11
videoId: VJrP2FUzKP0
+bilibiliIds:
+ aid: 378034466
+ bvid: BV19f4y1c7nu
+ cid: 409001487
dashedName: introduction-to-data-analysis
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
index 9f4c5ff492..d0072c99b4 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c150
title: Celle di Jupyter Notebook
challengeType: 11
videoId: 5PPegAs9aLA
+bilibiliIds:
+ aid: 420510493
+ bvid: BV19341117Hq
+ cid: 409003280
dashedName: jupyter-notebooks-cells
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
index b3b04bb011..c7815d704d 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c151
title: Importare ed esportare dati usando Jupyter Notebook
challengeType: 11
videoId: k1msxD3JIxE
+bilibiliIds:
+ aid: 975540688
+ bvid: BV1n44y1b7Gi
+ cid: 409006337
dashedName: jupyter-notebooks-importing-and-exporting-data
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
index 2775558e59..d39980dbd6 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c157
title: Algebra e dimensione con Numpy
challengeType: 11
videoId: XAT97YLOKD8
+bilibiliIds:
+ aid: 250621433
+ bvid: BV1hv41137uM
+ cid: 409013128
dashedName: numpy-algebra-and-size
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
index 62cf8d3059..735a548483 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c154
title: Array di Numpy
challengeType: 11
videoId: VDYVFHBL1AM
+bilibiliIds:
+ aid: 890607366
+ bvid: BV1zP4y1h7FR
+ cid: 409011400
dashedName: numpy-arrays
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
index 1361af2947..c705cb376c 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c156
title: Array booleani di Numpy
challengeType: 11
videoId: N1ttsMmcVMM
+bilibiliIds:
+ aid: 208091324
+ bvid: BV1Qh411p7V8
+ cid: 409012711
dashedName: numpy-boolean-arrays
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
index c6780d7dec..de34559abf 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c152
title: Introduzione a Numpy A
challengeType: 11
videoId: P-JjV6GBCmk
+bilibiliIds:
+ aid: 718079611
+ bvid: BV18Q4y1k7om
+ cid: 409007080
dashedName: numpy-introduction-a
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
index d6b8f6ba2a..506521be8c 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c153
title: Introduzione a Numpy B
challengeType: 11
videoId: YIqgrNLAZkA
+bilibiliIds:
+ aid: 250503382
+ bvid: BV1kv411w7vB
+ cid: 409010193
dashedName: numpy-introduction-b
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
index 54784208f9..d00e4c80f5 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c155
title: Operazioni con Numpy
challengeType: 11
videoId: eqSVcJbaPdk
+bilibiliIds:
+ aid: 378057123
+ bvid: BV13f4y1w7od
+ cid: 409012507
dashedName: numpy-operations
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
index f0558929a6..172b8f5c7e 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15b
title: Selezione condizionale con Panda e modifica dei DataFrame
challengeType: 11
videoId: BFlH0fN5xRQ
+bilibiliIds:
+ aid: 505598518
+ bvid: BV1vg411c72y
+ cid: 409113534
dashedName: pandas-conditional-selection-and-modifying-dataframes
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
index a404eaa7bf..e7dcb9a303 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15c
title: Creazione di colonne con Panda
challengeType: 11
videoId: _sSo2XZoB3E
+bilibiliIds:
+ aid: 975568901
+ bvid: BV1b44y1b7Cg
+ cid: 409018052
dashedName: pandas-creating-columns
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
index ea65197260..6737d1146e 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15a
title: I DataFrame di Panda
challengeType: 11
videoId: 7SgFBYXaiH0
+bilibiliIds:
+ aid: 890503235
+ bvid: BV1TP4y1h7qq
+ cid: 409014039
dashedName: pandas-dataframes
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
index 4a423d8963..2efa8dcaa3 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c159
title: Indicizzazione di Pandas e selezione condizionale
challengeType: 11
videoId: '-ZOrgV_aA9A'
+bilibiliIds:
+ aid: 720604139
+ bvid: BV1FQ4y1k7tC
+ cid: 409013650
dashedName: pandas-indexing-and-conditional-selection
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
index 79137cba37..1a0f4e705f 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c158
title: Introduzione a Pandas
challengeType: 11
videoId: 0xACW-8cZU0
+bilibiliIds:
+ aid: 975510116
+ bvid: BV1u44y1b7fD
+ cid: 409013433
dashedName: pandas-introduction
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
index 4f80ad7146..73d92c1c28 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c166
title: Funzioni e collezioni di Python
challengeType: 11
videoId: NzpU17ZVlUw
+bilibiliIds:
+ aid: 675544435
+ bvid: BV1pU4y1N7JC
+ cid: 409023833
dashedName: python-functions-and-collections
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
index 9577f855d1..ab41ee2371 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c165
title: Introduzione a Python
challengeType: 11
videoId: PrQV9JkLhb4
+bilibiliIds:
+ aid: 805597530
+ bvid: BV1634y1S7gD
+ cid: 409023550
dashedName: python-introduction
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
index fce54273b0..dec28c091d 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c167
title: Iterazione e moduli in Python
challengeType: 11
videoId: XzosGWLafrY
+bilibiliIds:
+ aid: 633068913
+ bvid: BV1db4y127M4
+ cid: 409024056
dashedName: python-iteration-and-modules
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
index 2b60b2c9c1..a06dec7da3 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed4
title: 'Accedere e cambiare elementi, righe, colonne'
challengeType: 11
videoId: v-7Y7koJ_N0
+bilibiliIds:
+ aid: 590517748
+ bvid: BV1Eq4y1f7Fa
+ cid: 409025392
dashedName: accessing-and-changing-elements-rows-columns
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/basics-of-numpy.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/basics-of-numpy.md
index 52b88c19a2..8a30de8f64 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/basics-of-numpy.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/basics-of-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed3
title: Fondamenti di Numpy
challengeType: 11
videoId: f9QrZrKQMLI
+bilibiliIds:
+ aid: 763014202
+ bvid: BV1K64y1a7bu
+ cid: 409025169
dashedName: basics-of-numpy
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/copying-arrays-warning.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/copying-arrays-warning.md
index c34806709e..ab3a196408 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/copying-arrays-warning.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/copying-arrays-warning.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed7
title: Avvertenze sulla copia di array
challengeType: 11
videoId: iIoQ0_L0GvA
+bilibiliIds:
+ aid: 633008569
+ bvid: BV1Bb4y127fb
+ cid: 409026161
dashedName: copying-arrays-warning
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initialize-array-problem.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initialize-array-problem.md
index 6d1bc99a50..02edfd1221 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initialize-array-problem.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initialize-array-problem.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed6
title: Problema di inizializzazione degli array
challengeType: 11
videoId: 0jGfH8BPfOk
+bilibiliIds:
+ aid: 763027834
+ bvid: BV1w64y1a7eo
+ cid: 409025878
dashedName: initialize-array-problem
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initializing-different-arrays.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initializing-different-arrays.md
index 19d7a271c0..a25dc0b65e 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initializing-different-arrays.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/initializing-different-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed5
title: Inizializzazione di diversi array
challengeType: 11
videoId: CEykdsKT4U4
+bilibiliIds:
+ aid: 718044756
+ bvid: BV1MQ4y1k7BB
+ cid: 409025638
dashedName: initializing-different-arrays
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
index c24815572a..f0dd90e7f4 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600eda
title: Caricamento dei dati e indicizzazione avanzata
challengeType: 11
videoId: tUdBZ7pF8Jg
+bilibiliIds:
+ aid: 720524642
+ bvid: BV1xQ4y1r7mu
+ cid: 409027117
dashedName: loading-data-and-advanced-indexing
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/mathematics.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/mathematics.md
index b6528fbc5a..9b6b90a23e 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/mathematics.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/mathematics.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed8
title: Matematica
challengeType: 11
videoId: 7txegvyhtVk
+bilibiliIds:
+ aid: 890533226
+ bvid: BV1KP4y1h733
+ cid: 409026503
dashedName: mathematics
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/reorganizing-arrays.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/reorganizing-arrays.md
index 6f5ab69ad1..e82a4c1778 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/reorganizing-arrays.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/reorganizing-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed9
title: Riorganizzazione degli array
challengeType: 11
videoId: VNWAQbEM-C8
+bilibiliIds:
+ aid: 548035655
+ bvid: BV1fq4y1N7aC
+ cid: 409026755
dashedName: reorganizing-arrays
---
diff --git a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/what-is-numpy.md b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/what-is-numpy.md
index e75a000988..4d81e58227 100644
--- a/curriculum/challenges/italian/08-data-analysis-with-python/numpy/what-is-numpy.md
+++ b/curriculum/challenges/italian/08-data-analysis-with-python/numpy/what-is-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed2
title: Che cos’è NumPy
challengeType: 11
videoId: 5Nwfs5Ej85Q
+bilibiliIds:
+ aid: 293086867
+ bvid: BV1Tf4y1E7QZ
+ cid: 409024791
dashedName: what-is-numpy
---
diff --git a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
index b5a2dcd35e..4407a50071 100644
--- a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
+++ b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db0
title: Creare un client TCP
challengeType: 11
videoId: ugYfJNTawks
+bilibiliIds:
+ aid: 933058124
+ bvid: BV16M4y1g7zL
+ cid: 409034338
dashedName: creating-a-tcp-client
---
diff --git a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
index 803b4d4528..f1429d351c 100644
--- a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
+++ b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db3
title: Sviluppare un Banner Grabber
challengeType: 11
videoId: CeGW761BIsA
+bilibiliIds:
+ aid: 633014533
+ bvid: BV1Sb4y127H9
+ cid: 409036288
dashedName: developing-a-banner-grabber
---
diff --git a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
index 6099cfc31c..c033e79608 100644
--- a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
+++ b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db4
title: Sviluppare uno scanner di porte
challengeType: 11
videoId: z_qkqZS7KZ4
+bilibiliIds:
+ aid: 208077317
+ bvid: BV1Uh411p7HS
+ cid: 409036706
dashedName: developing-a-port-scanner
---
diff --git a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
index cd2e154a75..7096b40469 100644
--- a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
+++ b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db1
title: Sviluppare uno scanner Nmap parte 1
challengeType: 11
videoId: jYk9XaGoAnk
+bilibiliIds:
+ aid: 805657338
+ bvid: BV1o34y1S7zf
+ cid: 414718986
dashedName: developing-an-nmap-scanner-part-1
---
diff --git a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
index 16e1dcdd26..4ac8c2c219 100644
--- a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
+++ b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db2
title: Sviluppare uno scanner Nmap parte 2
challengeType: 11
videoId: a98PscnUsTg
+bilibiliIds:
+ aid: 505526943
+ bvid: BV1Hg411c7oE
+ cid: 409034761
dashedName: developing-an-nmap-scanner-part-2
---
diff --git a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/introduction-and-setup.md b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/introduction-and-setup.md
index f7c8822c8e..3db96c75c5 100644
--- a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/introduction-and-setup.md
+++ b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/introduction-and-setup.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94dae
title: Introduzione e configurazione
challengeType: 11
videoId: XeQ7ZKtb998
+bilibiliIds:
+ aid: 718017704
+ bvid: BV13Q4y1k7hX
+ cid: 409033630
dashedName: introduction-and-setup
---
diff --git a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
index 281befcc0b..aa3436f2b4 100644
--- a/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
+++ b/curriculum/challenges/italian/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94daf
title: Comprendere i socket e creare un server TCP
challengeType: 11
videoId: F1QI9tNuDQg
+bilibiliIds:
+ aid: 848005038
+ bvid: BV1bL4y1a7kJ
+ cid: 409034113
dashedName: understanding-sockets-and-creating-a-tcp-server
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/conclusion.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/conclusion.md
index 4a1eb0dcdf..68e0709bf3 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/conclusion.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/conclusion.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da6
title: Conclusione
challengeType: 11
videoId: LMNub5frQi4
+bilibiliIds:
+ aid: 208033449
+ bvid: BV1Wh411p79h
+ cid: 409139716
dashedName: conclusion
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
index fd715d02eb..705df7fd10 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d99
title: 'Reti neurali convoluzionali: Valutare un modello'
challengeType: 11
videoId: eCATNvwraXg
+bilibiliIds:
+ aid: 933030136
+ bvid: BV1hM4y1g7Bx
+ cid: 409132265
dashedName: convolutional-neural-networks-evaluating-the-model
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
index 840c8600fa..31a5acf834 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9a
title: 'Reti neurali convoluzionali: scegliere un modello preaddestrato'
challengeType: 11
videoId: h1XUt1AgIOI
+bilibiliIds:
+ aid: 463063633
+ bvid: BV1qL411x73q
+ cid: 409132626
dashedName: convolutional-neural-networks-picking-a-pretrained-model
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
index b1893bf4ec..94aa90e052 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d97
title: 'Reti neurali convolutionali: Il livello convoluzionale'
challengeType: 11
videoId: LrdmcQpTyLw
+bilibiliIds:
+ aid: 805608595
+ bvid: BV1Q34y1S7nr
+ cid: 409131585
dashedName: convolutional-neural-networks-the-convolutional-layer
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
index 936fe8767a..88ec8d24f3 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d96
title: Reti neurali convoluzionali
challengeType: 11
videoId: _1kTP7uoU9E
+bilibiliIds:
+ aid: 805604251
+ bvid: BV1D34y1S7zS
+ cid: 409131358
dashedName: convolutional-neural-networks
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
index b19c74b0ab..d4232f114d 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8e
title: 'Algoritmi di apprendimento principali: Costruire il modello'
challengeType: 11
videoId: 5wHw8BTd2ZQ
+bilibiliIds:
+ aid: 763068584
+ bvid: BV1s64y1a7WR
+ cid: 409128675
dashedName: core-learning-algorithms-building-the-model
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
index 677fbc9d66..c2ffb64c79 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8d
title: 'Algoritmi di apprendimento principali: Classificazione'
challengeType: 11
videoId: qFF7ZQNvK9E
+bilibiliIds:
+ aid: 505531167
+ bvid: BV1Vg411c7av
+ cid: 409128427
dashedName: core-learning-algorithms-classification
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
index 2ca5b1f704..d9ac5af3cf 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8f
title: 'Algoritmi di apprendimento principali: Clustering'
challengeType: 11
videoId: 8sqIaHc9Cz4
+bilibiliIds:
+ aid: 720567137
+ bvid: BV1BQ4y1r7UY
+ cid: 409129005
dashedName: core-learning-algorithms-clustering
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
index 5079939647..18c3fe5bd0 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d90
title: 'Algoritmi di apprendimento principali: Modelli di Markov a stati nascosti'
challengeType: 11
videoId: IZg24y4wEPY
+bilibiliIds:
+ aid: 633081400
+ bvid: BV1tb4y1y72V
+ cid: 409129376
dashedName: core-learning-algorithms-hidden-markov-models
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
index 653006bf2f..31c13c5e29 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8c
title: 'Algoritmi di apprendimento principali: Il processo di training'
challengeType: 11
videoId: _cEwvqVoBhI
+bilibiliIds:
+ aid: 335593652
+ bvid: BV12R4y1H7Fi
+ cid: 409128047
dashedName: core-learning-algorithms-the-training-process
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
index 46043410e9..0c220ad709 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8b
title: 'Algoritmi di apprendimento principali: training e test di dati'
challengeType: 11
videoId: wz9J1slsi7I
+bilibiliIds:
+ aid: 335509743
+ bvid: BV1rA411F7bG
+ cid: 409127635
dashedName: core-learning-algorithms-training-and-testing-data
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
index 40cb3ca910..0afd33b93b 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d91
title: 'Algoritmi di apprendimento principali: Usare le probabilità per fare predizioni'
challengeType: 11
videoId: fYAYvLUawnc
+bilibiliIds:
+ aid: 763245369
+ bvid: BV1B64y187gE
+ cid: 414731624
dashedName: core-learning-algorithms-using-probabilities-to-make-predictions
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
index 428ac75260..b305108e27 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8a
title: 'Algoritmi di apprendimento principali: Lavorare con i dati'
challengeType: 11
videoId: u85IOSsJsPI
+bilibiliIds:
+ aid: 675550447
+ bvid: BV1RU4y1w7up
+ cid: 409127383
dashedName: core-learning-algorithms-working-with-data
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
index 0a1558d2f8..5a6a05a72e 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d89
title: Algoritmi di apprendimento principali
challengeType: 11
videoId: u5lZURgcWnU
+bilibiliIds:
+ aid: 763034025
+ bvid: BV1A64y1a7g4
+ cid: 409127051
dashedName: core-learning-algorithms
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
index 9a609939d0..fcf1488930 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d98
title: Creare una rete neurale convoluzionale
challengeType: 11
videoId: kfv0K8MtkIc
+bilibiliIds:
+ aid: 420605824
+ bvid: BV1p341127wW
+ cid: 409131869
dashedName: creating-a-convolutional-neural-network
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
index e66c073da8..14687f7df0 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d87
title: 'Introduzione: Fondamenti di machine learning'
challengeType: 11
videoId: KwL1qTR5MT8
+bilibiliIds:
+ aid: 293071716
+ bvid: BV1Yf4y1n7R2
+ cid: 409125921
dashedName: introduction-machine-learning-fundamentals
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
index 803f032855..f8948111d5 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d88
title: Introduzione a TensorFlow
challengeType: 11
videoId: r9hRyGGjOgQ
+bilibiliIds:
+ aid: 675554869
+ bvid: BV1dU4y1w7vw
+ cid: 409126541
dashedName: introduction-to-tensorflow
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
index 4e78fac577..54d16cd0d2 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da1
title: 'Elaborazione del linguaggio naturale con RNN: costruzione del modello'
challengeType: 11
videoId: 32WBFS7lfsw
+bilibiliIds:
+ aid: 848015573
+ bvid: BV1YL4y1a7WS
+ cid: 409138016
dashedName: natural-language-processing-with-rnns-building-the-model
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
index d395844eed..771983d2ca 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da0
title: 'Elaborazione del linguaggio naturale con RNN: Crea un generatore di gioco'
challengeType: 11
videoId: j5xsxjq_Xk8
+bilibiliIds:
+ aid: 720525759
+ bvid: BV1xQ4y1r7tw
+ cid: 409137674
dashedName: natural-language-processing-with-rnns-create-a-play-generator
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
index 77ba3fade3..32c7cd023c 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9f
title: 'Elaborazione del linguaggio naturale con RNN: fare previsioni'
challengeType: 11
videoId: WO1hINnBj20
+bilibiliIds:
+ aid: 848023400
+ bvid: BV1WL4y1a75i
+ cid: 409136303
dashedName: natural-language-processing-with-rnns-making-predictions
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
index 20ca38da4f..676b00c63c 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9c
title: 'Elaborazione del linguaggio naturale con RNN: Parte 2'
challengeType: 11
videoId: mUU9YXOFbZg
+bilibiliIds:
+ aid: 975558435
+ bvid: BV1L44y1b7Lp
+ cid: 409135242
dashedName: natural-language-processing-with-rnns-part-2
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
index ffdab99a93..60f78b5ef4 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9d
title: 'Elaborazione del linguaggio naturale con RNN: Reti Neurali Ricorrenti'
challengeType: 11
videoId: bX5681NPOcA
+bilibiliIds:
+ aid: 335605808
+ bvid: BV1SR4y1H7ri
+ cid: 409135641
dashedName: natural-language-processing-with-rnns-recurring-neural-networks
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
index e3a9eb740c..a03374ece7 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9e
title: 'Elaborazione del linguaggio naturale con RNN: analisi del sentimento'
challengeType: 11
videoId: lYeLtu8Nq7c
+bilibiliIds:
+ aid: 933111408
+ bvid: BV1TM4y137VB
+ cid: 409135996
dashedName: natural-language-processing-with-rnns-sentiment-analysis
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
index 2c09f9d7f6..2c371b31d9 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da2
title: 'Elaborazione del linguaggio naturale con RNN: training del modello'
challengeType: 11
videoId: hEUiK7j9UI8
+bilibiliIds:
+ aid: 250542136
+ bvid: BV19v411w7Fi
+ cid: 409138327
dashedName: natural-language-processing-with-rnns-training-the-model
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
index 5a0f8f1982..c68df97b41 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9b
title: Elaborazione del linguaggio naturale con le RNN
challengeType: 11
videoId: ZyCaF5S-lKg
+bilibiliIds:
+ aid: 548105306
+ bvid: BV1nq4y1K7VU
+ cid: 409134745
dashedName: natural-language-processing-with-rnns
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
index fb67821e5f..fdbd6d9a84 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d93
title: 'Reti Neurali: funzioni di attivazione'
challengeType: 11
videoId: S45tqW6BqRs
+bilibiliIds:
+ aid: 675610466
+ bvid: BV1wU4y1A7TJ
+ cid: 409130203
dashedName: neural-networks-activation-functions
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
index 6f0dd4bcb6..790baaa09d 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d95
title: 'Reti neurali: creare un modello'
challengeType: 11
videoId: K8bz1bmOCTw
+bilibiliIds:
+ aid: 848109040
+ bvid: BV1EL4y1878f
+ cid: 409130886
dashedName: neural-networks-creating-a-model
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
index 85ac8694a4..ac0501836a 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d94
title: 'Reti Neurali: Ottimizzatori'
challengeType: 11
videoId: hdOtRPQe1o4
+bilibiliIds:
+ aid: 763064173
+ bvid: BV1364y1a7eM
+ cid: 409130557
dashedName: neural-networks-optimizers
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
index 8623b61b42..827a1aff8c 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d92
title: Reti neurali con TensorFlow
challengeType: 11
videoId: uisdfrNrZW4
+bilibiliIds:
+ aid: 378031840
+ bvid: BV1Qf4y1c7Dc
+ cid: 409129888
dashedName: neural-networks-with-tensorflow
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
index 07adc6676a..29b094a72d 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da5
title: 'Apprendimento per rinforzo con Q-Learning: Esempio'
challengeType: 11
videoId: RBBSNta234s
+bilibiliIds:
+ aid: 848073871
+ bvid: BV1uL4y187Eq
+ cid: 409139471
dashedName: reinforcement-learning-with-q-learning-example
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
index adc709db72..d0430ecd83 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da4
title: 'Apprendimento per rinforzo con Q-Learning: Parte 2'
challengeType: 11
videoId: DX7hJuaUZ7o
+bilibiliIds:
+ aid: 420570359
+ bvid: BV1G341127zr
+ cid: 409139190
dashedName: reinforcement-learning-with-q-learning-part-2
---
diff --git a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
index 8918f9d324..ea90b391f0 100644
--- a/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
+++ b/curriculum/challenges/italian/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da3
title: Apprendimento per rinforzo con Q-Learning
challengeType: 11
videoId: Cf7DSU0gVb4
+bilibiliIds:
+ aid: 463025802
+ bvid: BV1iL411x7L6
+ cid: 409138811
dashedName: reinforcement-learning-with-q-learning
---
diff --git a/curriculum/challenges/portuguese/01-responsive-web-design/basic-css/size-your-images.md b/curriculum/challenges/portuguese/01-responsive-web-design/basic-css/size-your-images.md
index 4827744983..1a17777895 100644
--- a/curriculum/challenges/portuguese/01-responsive-web-design/basic-css/size-your-images.md
+++ b/curriculum/challenges/portuguese/01-responsive-web-design/basic-css/size-your-images.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9acdf08812
title: Alterar o tamanho de imagens
challengeType: 0
-videoUrl: 'https://scrimba.com/c/cM9MmCP'
forumTopicId: 18282
dashedName: size-your-images
---
diff --git a/curriculum/challenges/portuguese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md b/curriculum/challenges/portuguese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
index 6511e9ce0c..b6fa8f4fc0 100644
--- a/curriculum/challenges/portuguese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
+++ b/curriculum/challenges/portuguese/01-responsive-web-design/basic-html-and-html5/add-images-to-your-website.md
@@ -2,7 +2,6 @@
id: bad87fee1348bd9aedf08812
title: Adicionar imagens ao seu site
challengeType: 0
-videoUrl: 'https://scrimba.com/p/pVMPUv/c8EbJf2'
forumTopicId: 16640
dashedName: add-images-to-your-website
---
diff --git a/curriculum/challenges/portuguese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md b/curriculum/challenges/portuguese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
index 6201d8db9b..27ed80eec0 100644
--- a/curriculum/challenges/portuguese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
+++ b/curriculum/challenges/portuguese/02-javascript-algorithms-and-data-structures/basic-javascript/testing-objects-for-properties.md
@@ -2,7 +2,6 @@
id: 567af2437cbaa8c51670a16c
title: Testar objetos por propriedades
challengeType: 1
-videoUrl: 'https://scrimba.com/c/c6Wz4ySr'
forumTopicId: 18324
dashedName: testing-objects-for-properties
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
index 695596b06a..db84469612 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/build-your-own-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05b
title: Crie suas próprias funções
challengeType: 11
videoId: nLDychdBwUg
+bilibiliIds:
+ aid: 249487483
+ bvid: BV1Fv411J7bS
+ cid: 376340281
dashedName: build-your-own-functions
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
index 7c4d1bb26b..8cf0be837f 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/comparing-and-sorting-tuples.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06d
title: Comparação e ordenação de tuplas
challengeType: 11
videoId: dZXzBXUxxCs
+bilibiliIds:
+ aid: 931886163
+ bvid: BV1HM4y1T7TK
+ cid: 376533673
dashedName: comparing-and-sorting-tuples
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
index 000e507556..0d3189cf9a 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/conditional-execution.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f058
title: Execução condicional
challengeType: 11
videoId: gz_IfIsZQtc
+bilibiliIds:
+ aid: 206949935
+ bvid: BV1Jh411z7bY
+ cid: 376337035
dashedName: conditional-execution
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
index eb2f940dd1..d6b7fbd62e 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-mailing-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f097
title: 'Visualização de dados: listas de e-mails'
challengeType: 11
videoId: RYdW660KkaQ
+bilibiliIds:
+ aid: 334465586
+ bvid: BV18w411R7dD
+ cid: 377545473
dashedName: data-visualization-mailing-lists
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
index 5f8bd68b56..c7f1538852 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/data-visualization-page-rank.md
@@ -3,6 +3,10 @@ id: 5e7b9f6a0b6c005b0e76f096
title: 'Visualização de dados: Classificação de página'
challengeType: 11
videoId: 6-w_qIUwaxU
+bilibiliIds:
+ aid: 376950472
+ bvid: BV1ho4y1Q72u
+ cid: 377544599
dashedName: data-visualization-page-rank
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
index 7a57482667..2f8b4d0361 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-and-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f069
title: Dicionários e laços de repetição
challengeType: 11
videoId: EEmekKiKG70
+bilibiliIds:
+ aid: 589401038
+ bvid: BV1eq4y1X7xU
+ cid: 376387132
dashedName: dictionaries-and-loops
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
index 6cee54981c..6801de0515 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/dictionaries-common-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f068
title: 'Dicionários: aplicações comuns'
challengeType: 11
videoId: f17xPfIXct0
+bilibiliIds:
+ aid: 805747023
+ bvid: BV1v34y1D7ug
+ cid: 414168867
dashedName: dictionaries-common-applications
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
index c415c394a9..aa2174d215 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/files-as-a-sequence.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f063
title: Arquivos como sequências
challengeType: 11
videoId: cIA0EokbaHE
+bilibiliIds:
+ aid: 974380307
+ bvid: BV1p44y1m7br
+ cid: 376388846
dashedName: files-as-a-sequence
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
index d31a84a6c9..053a4d61c7 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f057
title: Expressões intermediárias
challengeType: 11
videoId: dKgUaIa5ATg
+bilibiliIds:
+ aid: 334428894
+ bvid: BV1uw411R7gH
+ cid: 376318468
dashedName: intermediate-expressions
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
index 9bbc6221aa..6ec156befa 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/intermediate-strings.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f061
title: Strings intermediárias
challengeType: 11
videoId: KgT_fYLXnyk
+bilibiliIds:
+ aid: 291983121
+ bvid: BV1Zf4y157yG
+ cid: 376394116
dashedName: intermediate-strings
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
index 1d57b44a49..4bd40e098e 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-elements-of-python.md
@@ -3,6 +3,10 @@ id: 5e6a54c358d3af90110a60a3
title: 'Introdução: elementos de Python'
challengeType: 11
videoId: aRY_xjL35v0
+bilibiliIds:
+ aid: 674420725
+ bvid: BV1MU4y1H7Lj
+ cid: 376315889
dashedName: introduction-elements-of-python
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
index 31d7c02ca9..ff9a350436 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-hardware-achitecture.md
@@ -3,6 +3,10 @@ id: 5e6a54af58d3af90110a60a1
title: 'Introdução: arquitetura de hardware'
challengeType: 11
videoId: H6qtjRTfSog
+bilibiliIds:
+ aid: 206977572
+ bvid: BV1zh411z7Ak
+ cid: 376199262
dashedName: introduction-hardware-architecture
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
index 413c975c22..1c3b36c72c 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/introduction-python-as-a-language.md
@@ -3,6 +3,10 @@ id: 5e6a54ba58d3af90110a60a2
title: 'Introdução: Python como uma linguagem'
challengeType: 11
videoId: 0QeGbZNS_bY
+bilibiliIds:
+ aid: 674404602
+ bvid: BV1GU4y1H7vB
+ cid: 376315625
dashedName: introduction-python-as-a-language
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
index 04016bb7a3..722fc25665 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-definite-loops.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05d
title: 'Iterações: laços definidos'
challengeType: 11
videoId: hiRTRAqNlpE
+bilibiliIds:
+ aid: 291987032
+ bvid: BV1ff4y157Q3
+ cid: 376385255
dashedName: iterations-definite-loops
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
index d2f43a82ec..7211b0d70d 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-loop-idioms.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05e
title: 'Iterações: idiomas de loop'
challengeType: 11
videoId: AelGAcoMXbI
+bilibiliIds:
+ aid: 334491369
+ bvid: BV1tw411R7Mm
+ cid: 376530765
dashedName: iterations-loop-idioms
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
index a24ef36ebe..688fb22120 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/iterations-more-patterns.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f05f
title: 'Iterações: mais padrões'
challengeType: 11
videoId: 9Wtqo6vha1M
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: iterations-more-patterns
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
index 1d64793820..4e335158c1 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/loops-and-iterations.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05c
title: Laços e iterações
challengeType: 11
videoId: dLA-szNRnUY
+bilibiliIds:
+ aid: 674492981
+ bvid: BV1hU4y1H7tF
+ cid: 376531204
dashedName: loops-and-iterations
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
index d7c9965ec6..f5d2d3efdd 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/make-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08b
title: Construa um banco de dados relacional
challengeType: 11
videoId: MQ5z4bdF92U
+bilibiliIds:
+ aid: 249380678
+ bvid: BV1vv411E76L
+ cid: 377531786
dashedName: make-a-relational-database
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
index 1ffe34db72..64e140312e 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/more-conditional-structures.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f059
title: Mais estruturas condicionais
challengeType: 11
videoId: HdL82tAZR20
+bilibiliIds:
+ aid: 631930118
+ bvid: BV1Nb4y1r7z2
+ cid: 376337449
dashedName: more-conditional-structures
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
index 153cbdb827..396df8b520 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-protocol.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f072
title: Protocolo de rede
challengeType: 11
videoId: c6vZGescaSc
+bilibiliIds:
+ aid: 931950996
+ bvid: BV1cM4y1N7K6
+ cid: 376388317
dashedName: networking-protocol
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
index 0ed2e4a8d4..ed6ad92638 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-text-processing.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f074
title: 'Rede: processamento de texto'
challengeType: 11
videoId: Pv_pJgVu8WI
+bilibiliIds:
+ aid: 804442498
+ bvid: BV16y4y1j7WW
+ cid: 377329124
dashedName: networking-text-processing
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
index 23ba124e12..13429576d6 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-using-urllib-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f075
title: 'Rede: usando urllib em Python'
challengeType: 11
videoId: 7lFM1T_CxBs
+bilibiliIds:
+ aid: 546908270
+ bvid: BV1Xq4y1H7e6
+ cid: 377331524
dashedName: networking-using-urllib-in-python
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
index 65bfd29eb2..1facb366c2 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-web-scraping-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0d0b6c005b0e76f076
title: 'Rede: Web Scraping com Python'
challengeType: 11
videoId: Uyioq2q4cEg
+bilibiliIds:
+ aid: 674382625
+ bvid: BV1oU4y1n7zQ
+ cid: 377331774
dashedName: networking-web-scraping-with-python
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
index 1af4f4dfc3..8874c93148 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f071
title: Redes com Python
challengeType: 11
videoId: _kJvneKVdNM
+bilibiliIds:
+ aid: 419494612
+ bvid: BV1r341167jT
+ cid: 376385858
dashedName: networking-with-python
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
index d14542052e..3999210e17 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/networking-write-a-web-browser.md
@@ -3,6 +3,10 @@ id: 5e7b9f0c0b6c005b0e76f073
title: 'Redes: Escreva um navegador da Web'
challengeType: 11
videoId: zjyT9DaAjx4
+bilibiliIds:
+ aid: 761908574
+ bvid: BV1j64y1x7wx
+ cid: 377319579
dashedName: networking-write-a-web-browser
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
index 42a4f9a297..74d32fbebf 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/object-lifecycle.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f087
title: Ciclo de vida de um objeto
challengeType: 11
videoId: p1r3h_AMMIM
+bilibiliIds:
+ aid: 461998717
+ bvid: BV1JL411n7Hr
+ cid: 377529681
dashedName: object-lifecycle
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
index 35deda1c5f..ee6be84190 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-a-sample-class.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f086
title: 'Objetos: exemplo de uma classe'
challengeType: 11
videoId: FiABKEuaSJ8
+bilibiliIds:
+ aid: 589451777
+ bvid: BV1rq4y1X7TG
+ cid: 377523194
dashedName: objects-a-sample-class
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
index b67d71c3a9..009d27779d 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/objects-inheritance.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f088
title: 'Objetos: Herança'
challengeType: 11
videoId: FBL3alYrxRM
+bilibiliIds:
+ aid: 631990691
+ bvid: BV1sb4y1r7GF
+ cid: 377529901
dashedName: objects-inheritance
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
index be5da3398d..40d104e514 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-dictionaries.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f067
title: Dicionários do Python
challengeType: 11
videoId: dnzvfimrRMg
+bilibiliIds:
+ aid: 631893305
+ bvid: BV19b4y167kj
+ cid: 376386176
dashedName: python-dictionaries
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-functions.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-functions.md
index a29c91802d..21f66d358d 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-functions.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-functions.md
@@ -3,6 +3,10 @@ id: 5e7b9f060b6c005b0e76f05a
title: Funções do Python
challengeType: 11
videoId: 3JGF-n3tDPU
+bilibiliIds:
+ aid: 631881917
+ bvid: BV1Xb4y167P4
+ cid: 376337920
dashedName: python-functions
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-lists.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-lists.md
index dbfd2fda86..2779ab5c82 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-lists.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f064
title: Listas em Python
challengeType: 11
videoId: Y0cvfDpYC_c
+bilibiliIds:
+ aid: 249460305
+ bvid: BV1Dv411E7Uj
+ cid: 376532993
dashedName: python-lists
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-objects.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-objects.md
index 117a941210..2ce81c0f3e 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-objects.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/python-objects.md
@@ -3,6 +3,10 @@ id: 5e7b9f160b6c005b0e76f085
title: Objetos do Python
challengeType: 11
videoId: uJxGeTYy0us
+bilibiliIds:
+ aid: 889496260
+ bvid: BV1ZP4y1s7G6
+ cid: 377522762
dashedName: python-objects
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/reading-files.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/reading-files.md
index 7d0e0efdac..735834279e 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/reading-files.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/reading-files.md
@@ -3,6 +3,10 @@ id: 5e7b9f080b6c005b0e76f062
title: Leitura de arquivos
challengeType: 11
videoId: Fo1tW09KIwo
+bilibiliIds:
+ aid: 334439927
+ bvid: BV1pw411R7UK
+ cid: 376532076
dashedName: reading-files
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
index 7274f667af..20c2232c16 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-matching-and-extracting-data.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06f
title: 'Expressões regulares: correspondência e extração de dados'
challengeType: 11
videoId: LaCZnTbQGkE
+bilibiliIds:
+ aid: 975629041
+ bvid: BV1i44y1b7hE
+ cid: 414167130
dashedName: regular-expressions-matching-and-extracting-data
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
index a51212bece..bb75e39893 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions-practical-applications.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f070
title: 'Expressões regulares: aplicações práticas'
challengeType: 11
videoId: xCjFU9G6x48
+bilibiliIds:
+ aid: 546924659
+ bvid: BV1mq4y1H7rZ
+ cid: 376386493
dashedName: regular-expressions-practical-applications
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
index da6f394fa4..7d87d0d95d 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/regular-expressions.md
@@ -3,6 +3,10 @@ id: 5e7b9f0b0b6c005b0e76f06e
title: Expressões regulares
challengeType: 11
videoId: Yud_COr6pZo
+bilibiliIds:
+ aid: 759422542
+ bvid: BV1W64y167YD
+ cid: 376387549
dashedName: regular-expressions
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
index 6401da35ca..11a6691f77 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-database-design.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08c
title: Design de banco de dados relacional
challengeType: 11
videoId: AqdfbrpkbHk
+bilibiliIds:
+ aid: 504388066
+ bvid: BV1Qg411j742
+ cid: 377532216
dashedName: relational-database-design
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
index ff55bbbb14..c3f803dfde 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-and-sqlite.md
@@ -3,6 +3,10 @@ id: 5e7b9f170b6c005b0e76f08a
title: Bancos de dados relacionais e SQLite
challengeType: 11
videoId: QlNod5-kFpA
+bilibiliIds:
+ aid: 249449958
+ bvid: BV12v411E74H
+ cid: 377530805
dashedName: relational-databases-and-sqlite
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
index 30d19be8f6..ad4c70b024 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-join-operation.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08f
title: 'Bancos de dados relacionais: operação de join'
challengeType: 11
videoId: jvDw3D9GKac
+bilibiliIds:
+ aid: 804461215
+ bvid: BV1Ry4y1j7tv
+ cid: 377542880
dashedName: relational-databases-join-operation
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
index 90079267ce..35dc74824f 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-many-to-many-relationships.md
@@ -3,6 +3,10 @@ id: 5e7b9f190b6c005b0e76f090
title: 'Bancos de dados relacionais: relações de muitos para muitos'
challengeType: 11
videoId: z-SBYcvEQOc
+bilibiliIds:
+ aid: 291965127
+ bvid: BV1Af4y1L7BK
+ cid: 377543409
dashedName: relational-databases-many-to-many-relationships
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
index 1c6b7624ae..57969abed8 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/relational-databases-relationship-building.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08e
title: 'Bancos de dados relacionais: construção de relacionamentos'
challengeType: 11
videoId: CSbqczsHVnc
+bilibiliIds:
+ aid: 376996473
+ bvid: BV1jo4y1S7VY
+ cid: 377532966
dashedName: relational-databases-relationship-building
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
index 6ecf4c16e0..b5fb69e6af 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/representing-relationships-in-a-relational-database.md
@@ -3,6 +3,10 @@ id: 5e7b9f180b6c005b0e76f08d
title: Representação de relacionamentos em um banco de dados relacional
challengeType: 11
videoId: '-orenCNdC2Q'
+bilibiliIds:
+ aid: 931953070
+ bvid: BV1FM4y1N7hc
+ cid: 377532529
dashedName: representing-relationships-in-a-relational-database
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
index 637bd85e79..399b08b855 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-and-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f066
title: Strings e listas
challengeType: 11
videoId: lxcFa7ldCi0
+bilibiliIds:
+ aid: 804401443
+ bvid: BV1By4y1j7F9
+ cid: 376385517
dashedName: strings-and-lists
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
index 4650d8e9ef..fc705f07ce 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/strings-in-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f070b6c005b0e76f060
title: Strings em Python
challengeType: 11
videoId: LYZj207fKpQ
+bilibiliIds:
+ aid: 504434218
+ bvid: BV1Lg41177s8
+ cid: 376531802
dashedName: strings-in-python
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
index e412851df1..136dc49698 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/the-tuples-collection.md
@@ -3,6 +3,10 @@ id: 5e7b9f0a0b6c005b0e76f06c
title: A coleção de tuplas
challengeType: 11
videoId: 3Lxpladfh2k
+bilibiliIds:
+ aid: 334468209
+ bvid: BV1aw411R77G
+ cid: 376533308
dashedName: the-tuples-collection
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
index d378206f2d..9a3b2316ba 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/using-web-services.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07a
title: Utilização de serviços da web
challengeType: 11
videoId: oNl1OVDPGKE
+bilibiliIds:
+ aid: 759406136
+ bvid: BV1b64y16746
+ cid: 377332189
dashedName: using-web-services
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
index 6d2235494a..ef6b05f4a9 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/variables-expressions-and-statements.md
@@ -3,6 +3,10 @@ id: 5e7b9f050b6c005b0e76f056
title: 'Variáveis, expressões e declarações'
challengeType: 11
videoId: nELR-uyyrok
+bilibiliIds:
+ aid: 419396811
+ bvid: BV1iV411p7Mn
+ cid: 376318116
dashedName: variables-expressions-and-statements
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
index f924e121da..5ada7950e7 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/visualizing-data-with-python.md
@@ -3,6 +3,10 @@ id: 5e7b9f690b6c005b0e76f095
title: Visualização de dados com Python
challengeType: 11
videoId: e3lydkH0prw
+bilibiliIds:
+ aid: 291996462
+ bvid: BV15f4y1L7jH
+ cid: 377544192
dashedName: visualizing-data-with-python
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
index f49aab8961..4f25451d54 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-api-rate-limiting-and-security.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f080
title: 'Serviços da web: Limitador de taxa de API e segurança'
challengeType: 11
videoId: pI-g0lI8ngs
+bilibiliIds:
+ aid: 249456172
+ bvid: BV1Sv411E7qa
+ cid: 377336269
dashedName: web-services-api-rate-limiting-and-security
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
index 7c3c19f193..83d46b976e 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-apis.md
@@ -3,6 +3,10 @@ id: 5e7b9f150b6c005b0e76f07f
title: 'Serviços da web: APIs'
challengeType: 11
videoId: oUNn1psfBJg
+bilibiliIds:
+ aid: 589451017
+ bvid: BV1zq4y1X7A9
+ cid: 377336011
dashedName: web-services-apis
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
index 898d7c7bf1..d653f144da 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-json.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07d
title: 'Serviços da web: JSON'
challengeType: 11
videoId: ZJE-U56BppM
+bilibiliIds:
+ aid: 419491911
+ bvid: BV1r3411672w
+ cid: 377332928
dashedName: web-services-json
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
index a53a2921d5..d991db14e9 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-service-oriented-approach.md
@@ -3,6 +3,10 @@ id: 5e7b9f140b6c005b0e76f07e
title: 'Serviços da web: Abordagem orientada a serviços'
challengeType: 11
videoId: muerlsCHExI
+bilibiliIds:
+ aid: 846899335
+ bvid: BV1E54y1J7oz
+ cid: 377333277
dashedName: web-services-service-oriented-approach
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
index 156544b2fd..0965b67e17 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml-schema.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07c
title: 'Serviços da web: Schema XML'
challengeType: 11
videoId: yWU9kTxW-nc
+bilibiliIds:
+ aid: 631951466
+ bvid: BV1Vb4y1r7m7
+ cid: 377332603
dashedName: web-services-xml-schema
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
index bf3ee5c094..123b35dc2c 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/web-services-xml.md
@@ -3,6 +3,10 @@ id: 5e7b9f0e0b6c005b0e76f07b
title: 'Serviços da web: XML'
challengeType: 11
videoId: _pZ0srbg7So
+bilibiliIds:
+ aid: 761920032
+ bvid: BV1n64y1x7KW
+ cid: 377332379
dashedName: web-services-xml
---
diff --git a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
index ec85adb437..ab07ad82c1 100644
--- a/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
+++ b/curriculum/challenges/portuguese/07-scientific-computing-with-python/python-for-everybody/working-with-lists.md
@@ -3,6 +3,10 @@ id: 5e7b9f090b6c005b0e76f065
title: Trabalhando com listas
challengeType: 11
videoId: lCnHfTHkhbE
+bilibiliIds:
+ aid: 376965958
+ bvid: BV1No4y1S7oi
+ cid: 376387989
dashedName: working-with-lists
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
index 6e29989321..bc46e6894f 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14d
title: Exemplo de análise de dados A
challengeType: 11
videoId: nVAaxZ34khk
+bilibiliIds:
+ aid: 590571151
+ bvid: BV1sq4y1f7gr
+ cid: 409002372
dashedName: data-analysis-example-a
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
index 8dc1b3b8e1..c841080fcd 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-analysis-example-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14e
title: Exemplo de análise de dados B
challengeType: 11
videoId: 0kJz0q0pvgQ
+bilibiliIds:
+ aid: 505593432
+ bvid: BV1kg411c7M6
+ cid: 409003530
dashedName: data-analysis-example-b
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
index b579d2e161..a72bd4f38f 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-and-visualizations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c160
title: Limpar e visualizar dados
challengeType: 11
videoId: mHjxzFS5_Z0
+bilibiliIds:
+ aid: 933107558
+ bvid: BV1KM4y137Ny
+ cid: 409019632
dashedName: data-cleaning-and-visualizations
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
index 1eba6bd56b..49de91ac4a 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-duplicates.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15f
title: Limpar dados duplicados
challengeType: 11
videoId: kj7QqjXhH6A
+bilibiliIds:
+ aid: 675611672
+ bvid: BV1VU4y1A7tu
+ cid: 409019368
dashedName: data-cleaning-duplicates
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
index ed97c8e075..b1447c4439 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15d
title: Introduzir a limpeza de dados
challengeType: 11
videoId: ovYNhnltVxY
+bilibiliIds:
+ aid: 250574398
+ bvid: BV1Pv411A7GN
+ cid: 409018611
dashedName: data-cleaning-introduction
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
index 8785e7ede5..5576489ebb 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/data-cleaning-with-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15e
title: Limpar os dados com DataFrames
challengeType: 11
videoId: sTMN_pdI6S0
+bilibiliIds:
+ aid: 505597026
+ bvid: BV1Yg411c7bx
+ cid: 409018948
dashedName: data-cleaning-with-dataframes
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
index 00729feb5b..5d6f161067 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/how-to-use-jupyter-notebooks-intro.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14f
title: Como usar a introdução aos Jupyter Notebooks
challengeType: 11
videoId: h8caJq2Bb9w
+bilibiliIds:
+ aid: 293035919
+ bvid: BV1Hf4y1n7qr
+ cid: 409002965
dashedName: how-to-use-jupyter-notebooks-intro
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
index ce55b031a2..4d3bca1c89 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/introduction-to-data-analysis.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c14c
title: Introduzir a análise de dados
challengeType: 11
videoId: VJrP2FUzKP0
+bilibiliIds:
+ aid: 378034466
+ bvid: BV19f4y1c7nu
+ cid: 409001487
dashedName: introduction-to-data-analysis
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
index 7883ea5f39..25189675d0 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-cells.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c150
title: Conhecer as células do Jupyter Notebooks
challengeType: 11
videoId: 5PPegAs9aLA
+bilibiliIds:
+ aid: 420510493
+ bvid: BV19341117Hq
+ cid: 409003280
dashedName: jupyter-notebooks-cells
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
index ead5d5c999..ca144a3f7f 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/jupyter-notebooks-importing-and-exporting-data.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c151
title: Importar e exportar os dados dos Jupyter Notebooks
challengeType: 11
videoId: k1msxD3JIxE
+bilibiliIds:
+ aid: 975540688
+ bvid: BV1n44y1b7Gi
+ cid: 409006337
dashedName: jupyter-notebooks-importing-and-exporting-data
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
index deb9a1ba2b..0a8092182d 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-algebra-and-size.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c157
title: Utilizar álgebra no NumPy e tamanho
challengeType: 11
videoId: XAT97YLOKD8
+bilibiliIds:
+ aid: 250621433
+ bvid: BV1hv41137uM
+ cid: 409013128
dashedName: numpy-algebra-and-size
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
index 74d6845a60..ebe809da4d 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c154
title: Conhecer os arrays do NumPy
challengeType: 11
videoId: VDYVFHBL1AM
+bilibiliIds:
+ aid: 890607366
+ bvid: BV1zP4y1h7FR
+ cid: 409011400
dashedName: numpy-arrays
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
index 3a124d5a17..ef5fccda41 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-boolean-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c156
title: Conhecer os arrays booleanos do NumPy
challengeType: 11
videoId: N1ttsMmcVMM
+bilibiliIds:
+ aid: 208091324
+ bvid: BV1Qh411p7V8
+ cid: 409012711
dashedName: numpy-boolean-arrays
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
index ef90feccf7..d40d6a2dee 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-a.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c152
title: Introdução ao NumPy A
challengeType: 11
videoId: P-JjV6GBCmk
+bilibiliIds:
+ aid: 718079611
+ bvid: BV18Q4y1k7om
+ cid: 409007080
dashedName: numpy-introduction-a
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
index 2db1b53122..e28e2092e1 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-introduction-b.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c153
title: Introdução ao NumPy B
challengeType: 11
videoId: YIqgrNLAZkA
+bilibiliIds:
+ aid: 250503382
+ bvid: BV1kv411w7vB
+ cid: 409010193
dashedName: numpy-introduction-b
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
index ecad220ce4..2bd99787fe 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/numpy-operations.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c155
title: Conhecer operações do NumPy
challengeType: 11
videoId: eqSVcJbaPdk
+bilibiliIds:
+ aid: 378057123
+ bvid: BV13f4y1w7od
+ cid: 409012507
dashedName: numpy-operations
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
index 6d3cd505dc..bc1feb2114 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-conditional-selection-and-modifying-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15b
title: Selecionar com condições no Pandas e modificar DataFrames
challengeType: 11
videoId: BFlH0fN5xRQ
+bilibiliIds:
+ aid: 505598518
+ bvid: BV1vg411c72y
+ cid: 409113534
dashedName: pandas-conditional-selection-and-modifying-dataframes
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
index a47004441d..d0008c095e 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-creating-columns.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15c
title: Criar colunas com o Pandas
challengeType: 11
videoId: _sSo2XZoB3E
+bilibiliIds:
+ aid: 975568901
+ bvid: BV1b44y1b7Cg
+ cid: 409018052
dashedName: pandas-creating-columns
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
index 0cc95e6aeb..25d0b7a495 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-dataframes.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c15a
title: DataFrames do Pandas
challengeType: 11
videoId: 7SgFBYXaiH0
+bilibiliIds:
+ aid: 890503235
+ bvid: BV1TP4y1h7qq
+ cid: 409014039
dashedName: pandas-dataframes
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
index 52153af461..6662ce72fa 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-indexing-and-conditional-selection.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c159
title: Indexar no Pandas e selecionar de modo condicional
challengeType: 11
videoId: '-ZOrgV_aA9A'
+bilibiliIds:
+ aid: 720604139
+ bvid: BV1FQ4y1k7tC
+ cid: 409013650
dashedName: pandas-indexing-and-conditional-selection
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
index 0102179f9c..704ad9306c 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/pandas-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c158
title: Introduzir o Pandas
challengeType: 11
videoId: 0xACW-8cZU0
+bilibiliIds:
+ aid: 975510116
+ bvid: BV1u44y1b7fD
+ cid: 409013433
dashedName: pandas-introduction
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/parsing-html-and-saving-data.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/parsing-html-and-saving-data.md
index 633746adac..659c3c4735 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/parsing-html-and-saving-data.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/parsing-html-and-saving-data.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c164
title: Analisar HTML e salvar dados
challengeType: 11
videoId: bJaqnTWQmb0
+bilibiliIds:
+ aid: 335522976
+ bvid: BV1RA411F7vi
+ cid: 409023170
dashedName: parsing-html-and-saving-data
---
@@ -12,7 +16,7 @@ dashedName: parsing-html-and-saving-data
Mais recursos:
-- [Notebooks no GitHub](https://github.com/ine-rmotr-curriculum/RDP-Reading-Data-with-Python-and-Pandas/tree/master/unit-1-reading-data-with-python-and-pandas/lesson-17-reading-html-tables/files)
+- [Notebooks no GitHub](https://github.com/krishnatray/RDP-Reading-Data-with-Python-and-Pandas)
- [Como abrir notebooks do GitHub usando o Google Colab.](https://colab.research.google.com/github/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb)
# --question--
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
index 00b64af46d..a1a881750d 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-functions-and-collections.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c166
title: Conhecer coleções e funções do Python
challengeType: 11
videoId: NzpU17ZVlUw
+bilibiliIds:
+ aid: 675544435
+ bvid: BV1pU4y1N7JC
+ cid: 409023833
dashedName: python-functions-and-collections
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
index cf250e667c..bad6c6f603 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c165
title: Introduzir o Python
challengeType: 11
videoId: PrQV9JkLhb4
+bilibiliIds:
+ aid: 805597530
+ bvid: BV1634y1S7gD
+ cid: 409023550
dashedName: python-introduction
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
index b81b069617..4dcdaed2e4 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/python-iteration-and-modules.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c167
title: Realizar a iteração em Python e módulos
challengeType: 11
videoId: XzosGWLafrY
+bilibiliIds:
+ aid: 633068913
+ bvid: BV1db4y127M4
+ cid: 409024056
dashedName: python-iteration-and-modules
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-csv-and-txt.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-csv-and-txt.md
index b89718d9c0..45154f0d08 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-csv-and-txt.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-csv-and-txt.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c162
title: Ler dados de CSV e TXT
challengeType: 11
videoId: ViGEv0zOzUk
+bilibiliIds:
+ aid: 505575354
+ bvid: BV1tg411c7GH
+ cid: 409020451
dashedName: reading-data-csv-and-txt
---
@@ -12,7 +16,7 @@ dashedName: reading-data-csv-and-txt
Mais recursos:
-- [Notebooks no GitHub](https://github.com/ine-rmotr-curriculum/RDP-Reading-Data-with-Python-and-Pandas/tree/master/unit-1-reading-data-with-python-and-pandas/lesson-1-reading-csv-and-txt-files/files)
+- [Notebooks no GitHub](https://github.com/krishnatray/RDP-Reading-Data-with-Python-and-Pandas)
- [Como abrir notebooks do GitHub usando o Google Colab.](https://colab.research.google.com/github/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb)
# --question--
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-from-databases.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-from-databases.md
index 668aa9d4f3..2000220d22 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-from-databases.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-from-databases.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c163
title: Ler dados do banco de dados
challengeType: 11
videoId: MtgXS1MofRw
+bilibiliIds:
+ aid: 890546354
+ bvid: BV1JP4y1h7gk
+ cid: 409020851
dashedName: reading-data-from-databases
---
@@ -12,7 +16,7 @@ dashedName: reading-data-from-databases
Mais recursos:
-- [Notebooks no GitHub](https://github.com/ine-rmotr-curriculum/RDP-Reading-Data-with-Python-and-Pandas/tree/master/unit-1-reading-data-with-python-and-pandas/lesson-11-reading-data-from-relational-databases/files)
+- [Notebooks no GitHub](https://github.com/krishnatray/RDP-Reading-Data-with-Python-and-Pandas)
- [Como abrir notebooks do GitHub usando o Google Colab.](https://colab.research.google.com/github/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb)
# --question--
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-introduction.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-introduction.md
index a03e9e087d..f61365ddc8 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-introduction.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/data-analysis-with-python-course/reading-data-introduction.md
@@ -3,6 +3,10 @@ id: 5e9a093a74c4063ca6f7c161
title: Introduzir a leitura de dados
challengeType: 11
videoId: cDnt02BcHng
+bilibiliIds:
+ aid: 548023524
+ bvid: BV1Nq4y1K7iV
+ cid: 409020187
dashedName: reading-data-introduction
---
@@ -12,7 +16,7 @@ dashedName: reading-data-introduction
Mais recursos:
-- [Notebooks no GitHub](https://github.com/ine-rmotr-curriculum/RDP-Reading-Data-with-Python-and-Pandas/tree/master/unit-1-reading-data-with-python-and-pandas/lesson-1-reading-csv-and-txt-files/files)
+- [Notebooks no GitHub](https://github.com/krishnatray/RDP-Reading-Data-with-Python-and-Pandas)
- [Como abrir notebooks do GitHub usando o Google Colab.](https://colab.research.google.com/github/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb)
# --question--
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
index ba1dc79add..2526d254eb 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/accessing-and-changing-elements,-rows,-columns.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed4
title: 'Acessar e mudar elementos, linhas, colunas'
challengeType: 11
videoId: v-7Y7koJ_N0
+bilibiliIds:
+ aid: 590517748
+ bvid: BV1Eq4y1f7Fa
+ cid: 409025392
dashedName: accessing-and-changing-elements-rows-columns
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/basics-of-numpy.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/basics-of-numpy.md
index 29c3626397..6eb6ae588a 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/basics-of-numpy.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/basics-of-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed3
title: Começar com o NumPy
challengeType: 11
videoId: f9QrZrKQMLI
+bilibiliIds:
+ aid: 763014202
+ bvid: BV1K64y1a7bu
+ cid: 409025169
dashedName: basics-of-numpy
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/copying-arrays-warning.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/copying-arrays-warning.md
index bd06ac26ae..dc77b3fc23 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/copying-arrays-warning.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/copying-arrays-warning.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed7
title: Aviso de cópia de arrays
challengeType: 11
videoId: iIoQ0_L0GvA
+bilibiliIds:
+ aid: 633008569
+ bvid: BV1Bb4y127fb
+ cid: 409026161
dashedName: copying-arrays-warning
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initialize-array-problem.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initialize-array-problem.md
index f4bb9858a3..a65819a782 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initialize-array-problem.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initialize-array-problem.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed6
title: Inicializar problema de arrays
challengeType: 11
videoId: 0jGfH8BPfOk
+bilibiliIds:
+ aid: 763027834
+ bvid: BV1w64y1a7eo
+ cid: 409025878
dashedName: initialize-array-problem
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initializing-different-arrays.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initializing-different-arrays.md
index 804688d840..5e6f3bec86 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initializing-different-arrays.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/initializing-different-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed5
title: Inicializar arrays diferentes
challengeType: 11
videoId: CEykdsKT4U4
+bilibiliIds:
+ aid: 718044756
+ bvid: BV1MQ4y1k7BB
+ cid: 409025638
dashedName: initializing-different-arrays
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
index 409d853583..8bf3b539db 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/loading-data-and-advanced-indexing.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600eda
title: Carregar dados e indexação avançada
challengeType: 11
videoId: tUdBZ7pF8Jg
+bilibiliIds:
+ aid: 720524642
+ bvid: BV1xQ4y1r7mu
+ cid: 409027117
dashedName: loading-data-and-advanced-indexing
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/mathematics.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/mathematics.md
index 40d8291aa2..cf68a6be7d 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/mathematics.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/mathematics.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed8
title: Matemática
challengeType: 11
videoId: 7txegvyhtVk
+bilibiliIds:
+ aid: 890533226
+ bvid: BV1KP4y1h733
+ cid: 409026503
dashedName: mathematics
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/reorganizing-arrays.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/reorganizing-arrays.md
index 40d6637c47..94e8d74823 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/reorganizing-arrays.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/reorganizing-arrays.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed9
title: Reorganizar arrays
challengeType: 11
videoId: VNWAQbEM-C8
+bilibiliIds:
+ aid: 548035655
+ bvid: BV1fq4y1N7aC
+ cid: 409026755
dashedName: reorganizing-arrays
---
diff --git a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/what-is-numpy.md b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/what-is-numpy.md
index 59e4d8a768..d5e02489eb 100644
--- a/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/what-is-numpy.md
+++ b/curriculum/challenges/portuguese/08-data-analysis-with-python/numpy/what-is-numpy.md
@@ -3,6 +3,10 @@ id: 5e9a0a8e09c5df3cc3600ed2
title: Conhecer o NumPy
challengeType: 11
videoId: 5Nwfs5Ej85Q
+bilibiliIds:
+ aid: 293086867
+ bvid: BV1Tf4y1E7QZ
+ cid: 409024791
dashedName: what-is-numpy
---
diff --git a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
index 28b1fafd4a..e1b42bb699 100644
--- a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
+++ b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/creating-a-tcp-client.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db0
title: Criar um client TCP
challengeType: 11
videoId: ugYfJNTawks
+bilibiliIds:
+ aid: 933058124
+ bvid: BV16M4y1g7zL
+ cid: 409034338
dashedName: creating-a-tcp-client
---
diff --git a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
index 01b7fa5e03..70627498bc 100644
--- a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
+++ b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-banner-grabber.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db3
title: Desenvolver um capturador de banner
challengeType: 11
videoId: CeGW761BIsA
+bilibiliIds:
+ aid: 633014533
+ bvid: BV1Sb4y127H9
+ cid: 409036288
dashedName: developing-a-banner-grabber
---
diff --git a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
index ca505c1c12..734ac501ae 100644
--- a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
+++ b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-a-port-scanner.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db4
title: Desenvolver um scanner de portas
challengeType: 11
videoId: z_qkqZS7KZ4
+bilibiliIds:
+ aid: 208077317
+ bvid: BV1Uh411p7HS
+ cid: 409036706
dashedName: developing-a-port-scanner
---
diff --git a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
index 9aee84204e..79282a179c 100644
--- a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
+++ b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-1.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db1
title: Desenvolver um scanner de Nmap parte 1
challengeType: 11
videoId: jYk9XaGoAnk
+bilibiliIds:
+ aid: 805657338
+ bvid: BV1o34y1S7zf
+ cid: 414718986
dashedName: developing-an-nmap-scanner-part-1
---
diff --git a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
index b188882ebd..dea27f18e8 100644
--- a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
+++ b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/developing-an-nmap-scanner-part-2.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94db2
title: Desenvolver um scanner de Nmap parte 2
challengeType: 11
videoId: a98PscnUsTg
+bilibiliIds:
+ aid: 505526943
+ bvid: BV1Hg411c7oE
+ cid: 409034761
dashedName: developing-an-nmap-scanner-part-2
---
diff --git a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/introduction-and-setup.md b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/introduction-and-setup.md
index 1cb0a7224b..7bd67895f3 100644
--- a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/introduction-and-setup.md
+++ b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/introduction-and-setup.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94dae
title: Introduzir e configurar
challengeType: 11
videoId: XeQ7ZKtb998
+bilibiliIds:
+ aid: 718017704
+ bvid: BV13Q4y1k7hX
+ cid: 409033630
dashedName: introduction-and-setup
---
diff --git a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
index 479c4ac75f..58d4aa2d9f 100644
--- a/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
+++ b/curriculum/challenges/portuguese/09-information-security/python-for-penetration-testing/understanding-sockets-and-creating-a-tcp-server.md
@@ -3,6 +3,10 @@ id: 5ea9997bbec2e9bc47e94daf
title: Compreender sockets e criar um servidor TCP
challengeType: 11
videoId: F1QI9tNuDQg
+bilibiliIds:
+ aid: 848005038
+ bvid: BV1bL4y1a7kJ
+ cid: 409034113
dashedName: understanding-sockets-and-creating-a-tcp-server
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/conclusion.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/conclusion.md
index dd8fdd02b7..08b7a7e9a4 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/conclusion.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/conclusion.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da6
title: Conclusão
challengeType: 11
videoId: LMNub5frQi4
+bilibiliIds:
+ aid: 208033449
+ bvid: BV1Wh411p79h
+ cid: 409139716
dashedName: conclusion
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
index 7fa5ae77ad..82f9a79831 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-evaluating-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d99
title: 'Redes neurais convolucionais: avaliando o modelo'
challengeType: 11
videoId: eCATNvwraXg
+bilibiliIds:
+ aid: 933030136
+ bvid: BV1hM4y1g7Bx
+ cid: 409132265
dashedName: convolutional-neural-networks-evaluating-the-model
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
index ab1da080ef..34156fb8af 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-picking-a-pretrained-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9a
title: 'Redes neurais convolucionais: Escolhendo um modelo pré-treinado'
challengeType: 11
videoId: h1XUt1AgIOI
+bilibiliIds:
+ aid: 463063633
+ bvid: BV1qL411x73q
+ cid: 409132626
dashedName: convolutional-neural-networks-picking-a-pretrained-model
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
index 57c2b4a98c..08f09e40c9 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks-the-convolutional-layer.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d97
title: 'Redes Neurais Convolucionais: A camada convolucional'
challengeType: 11
videoId: LrdmcQpTyLw
+bilibiliIds:
+ aid: 805608595
+ bvid: BV1Q34y1S7nr
+ cid: 409131585
dashedName: convolutional-neural-networks-the-convolutional-layer
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
index 2f1b245d07..7dd054eb1f 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/convolutional-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d96
title: Redes Neurais Convolucionais
challengeType: 11
videoId: _1kTP7uoU9E
+bilibiliIds:
+ aid: 805604251
+ bvid: BV1D34y1S7zS
+ cid: 409131358
dashedName: convolutional-neural-networks
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
index 5080571bfe..d9f44b5514 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8e
title: 'Algoritmos de aprendizagem principais: construindo o modelo'
challengeType: 11
videoId: 5wHw8BTd2ZQ
+bilibiliIds:
+ aid: 763068584
+ bvid: BV1s64y1a7WR
+ cid: 409128675
dashedName: core-learning-algorithms-building-the-model
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
index 89b64889ed..57b65a3858 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-classification.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8d
title: 'Algoritmos de aprendizagem principais: classificação'
challengeType: 11
videoId: qFF7ZQNvK9E
+bilibiliIds:
+ aid: 505531167
+ bvid: BV1Vg411c7av
+ cid: 409128427
dashedName: core-learning-algorithms-classification
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
index f9be278a20..50053cc0f4 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-clustering.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8f
title: 'Algoritmos de aprendizagem principais: agrupamento em clusters'
challengeType: 11
videoId: 8sqIaHc9Cz4
+bilibiliIds:
+ aid: 720567137
+ bvid: BV1BQ4y1r7UY
+ cid: 409129005
dashedName: core-learning-algorithms-clustering
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
index 4eb708af68..d288e412f4 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-hidden-markov-models.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d90
title: 'Algoritmos de aprendizagem principais: modelos de Markov ocultos'
challengeType: 11
videoId: IZg24y4wEPY
+bilibiliIds:
+ aid: 633081400
+ bvid: BV1tb4y1y72V
+ cid: 409129376
dashedName: core-learning-algorithms-hidden-markov-models
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
index ed75cda854..1d078ea06d 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-the-training-process.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8c
title: 'Algoritmos de aprendizagem principais: o processo de treinamento'
challengeType: 11
videoId: _cEwvqVoBhI
+bilibiliIds:
+ aid: 335593652
+ bvid: BV12R4y1H7Fi
+ cid: 409128047
dashedName: core-learning-algorithms-the-training-process
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
index 072ae46208..fdf5313ce4 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-training-and-testing-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8b
title: 'Algoritmos de aprendizagem principais: dados de treinamento e de teste'
challengeType: 11
videoId: wz9J1slsi7I
+bilibiliIds:
+ aid: 335509743
+ bvid: BV1rA411F7bG
+ cid: 409127635
dashedName: core-learning-algorithms-training-and-testing-data
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
index 96af857310..f9801901a6 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-using-probabilities-to-make-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d91
title: 'Algoritmos de aprendizagem principais: usando Probabilidades para fazer previsões'
challengeType: 11
videoId: fYAYvLUawnc
+bilibiliIds:
+ aid: 763245369
+ bvid: BV1B64y187gE
+ cid: 414731624
dashedName: core-learning-algorithms-using-probabilities-to-make-predictions
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
index e38e8e3da2..d0baf09910 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms-working-with-data.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d8a
title: 'Algoritmos de aprendizagem principais: trabalhando com dados'
challengeType: 11
videoId: u85IOSsJsPI
+bilibiliIds:
+ aid: 675550447
+ bvid: BV1RU4y1w7up
+ cid: 409127383
dashedName: core-learning-algorithms-working-with-data
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
index 2f96f11e78..e3b08a2582 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/core-learning-algorithms.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d89
title: Algoritmos de aprendizagem principais
challengeType: 11
videoId: u5lZURgcWnU
+bilibiliIds:
+ aid: 763034025
+ bvid: BV1A64y1a7g4
+ cid: 409127051
dashedName: core-learning-algorithms
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
index dd902ac4a0..b7e115e33e 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/creating-a-convolutional-neural-network.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d98
title: Criando uma rede neural convolucional
challengeType: 11
videoId: kfv0K8MtkIc
+bilibiliIds:
+ aid: 420605824
+ bvid: BV1p341127wW
+ cid: 409131869
dashedName: creating-a-convolutional-neural-network
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
index 0fb503f3b4..0f79def6c1 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-machine-learning-fundamentals.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d87
title: 'Introdução: fundamentos de aprendizagem de máquina'
challengeType: 11
videoId: KwL1qTR5MT8
+bilibiliIds:
+ aid: 293071716
+ bvid: BV1Yf4y1n7R2
+ cid: 409125921
dashedName: introduction-machine-learning-fundamentals
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
index 1356c0b7bd..57a433546d 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/introduction-to-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d88
title: Introdução ao TensorFlow
challengeType: 11
videoId: r9hRyGGjOgQ
+bilibiliIds:
+ aid: 675554869
+ bvid: BV1dU4y1w7vw
+ cid: 409126541
dashedName: introduction-to-tensorflow
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
index 905171b536..8519197082 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-building-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da1
title: 'Processamento de linguagem natural com RNNs: Criando o modelo'
challengeType: 11
videoId: 32WBFS7lfsw
+bilibiliIds:
+ aid: 848015573
+ bvid: BV1YL4y1a7WS
+ cid: 409138016
dashedName: natural-language-processing-with-rnns-building-the-model
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
index 1179a526a4..1cb5c6202f 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-create-a-play-generator.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da0
title: 'Processamento de linguagem natural com RNNs: Crie um gerador de reprodução'
challengeType: 11
videoId: j5xsxjq_Xk8
+bilibiliIds:
+ aid: 720525759
+ bvid: BV1xQ4y1r7tw
+ cid: 409137674
dashedName: natural-language-processing-with-rnns-create-a-play-generator
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
index a057869353..9093c8ade7 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-making-predictions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9f
title: 'Processamento de linguagem natural com RNNs: Fazendo previsões'
challengeType: 11
videoId: WO1hINnBj20
+bilibiliIds:
+ aid: 848023400
+ bvid: BV1WL4y1a75i
+ cid: 409136303
dashedName: natural-language-processing-with-rnns-making-predictions
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
index 05d16a7664..ea75e7cced 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9c
title: 'Processamento de linguagem natural com RNNs: Parte 2'
challengeType: 11
videoId: mUU9YXOFbZg
+bilibiliIds:
+ aid: 975558435
+ bvid: BV1L44y1b7Lp
+ cid: 409135242
dashedName: natural-language-processing-with-rnns-part-2
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
index db26555314..b87cc764ea 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-recurring-neural-networks.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9d
title: 'Processamento de linguagem natural com RNNs: redes neurais recorrentes'
challengeType: 11
videoId: bX5681NPOcA
+bilibiliIds:
+ aid: 335605808
+ bvid: BV1SR4y1H7ri
+ cid: 409135641
dashedName: natural-language-processing-with-rnns-recurring-neural-networks
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
index d8f380dcea..d3923fd8cd 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-sentimental-analysis.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9e
title: 'Processamento de linguagem natural com RNNs: Análise de sentimentos'
challengeType: 11
videoId: lYeLtu8Nq7c
+bilibiliIds:
+ aid: 933111408
+ bvid: BV1TM4y137VB
+ cid: 409135996
dashedName: natural-language-processing-with-rnns-sentiment-analysis
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
index 71fa2afc2c..0eddc504d3 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns-training-the-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da2
title: 'Processamento de linguagem natural com RNNs: Treinando o modelo'
challengeType: 11
videoId: hEUiK7j9UI8
+bilibiliIds:
+ aid: 250542136
+ bvid: BV19v411w7Fi
+ cid: 409138327
dashedName: natural-language-processing-with-rnns-training-the-model
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
index 42c3cab917..95cae34054 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/natural-language-processing-with-rnns.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d9b
title: Processamento de linguagem natural com RNNs
challengeType: 11
videoId: ZyCaF5S-lKg
+bilibiliIds:
+ aid: 548105306
+ bvid: BV1nq4y1K7VU
+ cid: 409134745
dashedName: natural-language-processing-with-rnns
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
index 3227087b41..c7ee800aed 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-activation-functions.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d93
title: 'Redes neurais: funções de ativação'
challengeType: 11
videoId: S45tqW6BqRs
+bilibiliIds:
+ aid: 675610466
+ bvid: BV1wU4y1A7TJ
+ cid: 409130203
dashedName: neural-networks-activation-functions
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
index 753bcf5808..2bad3930fe 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-creating-a-model.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d95
title: 'Redes neurais: Criando um modelo'
challengeType: 11
videoId: K8bz1bmOCTw
+bilibiliIds:
+ aid: 848109040
+ bvid: BV1EL4y1878f
+ cid: 409130886
dashedName: neural-networks-creating-a-model
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
index 7f19cf7972..dcb414347f 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-optimizers.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d94
title: 'Redes neurais: otimizadores'
challengeType: 11
videoId: hdOtRPQe1o4
+bilibiliIds:
+ aid: 763064173
+ bvid: BV1364y1a7eM
+ cid: 409130557
dashedName: neural-networks-optimizers
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
index 9022249b8b..c5bbcc1c3e 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/neural-networks-with-tensorflow.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72d92
title: Redes neurais com TensorFlow
challengeType: 11
videoId: uisdfrNrZW4
+bilibiliIds:
+ aid: 378031840
+ bvid: BV1Qf4y1c7Dc
+ cid: 409129888
dashedName: neural-networks-with-tensorflow
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
index 041a9e767f..9490bd1fe3 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-example.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da5
title: 'Aprendizagem de reforço com Q-Learning: Exemplo'
challengeType: 11
videoId: RBBSNta234s
+bilibiliIds:
+ aid: 848073871
+ bvid: BV1uL4y187Eq
+ cid: 409139471
dashedName: reinforcement-learning-with-q-learning-example
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
index bb7f1ee002..e6c78a2f1c 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning-part-2.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da4
title: 'Aprendizagem de reforço com Q-Learning: Parte 2'
challengeType: 11
videoId: DX7hJuaUZ7o
+bilibiliIds:
+ aid: 420570359
+ bvid: BV1G341127zr
+ cid: 409139190
dashedName: reinforcement-learning-with-q-learning-part-2
---
diff --git a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
index 3d897235f7..95a04c2879 100644
--- a/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
+++ b/curriculum/challenges/portuguese/11-machine-learning-with-python/tensorflow/reinforcement-learning-with-q-learning.md
@@ -3,6 +3,10 @@ id: 5e8f2f13c4cdbe86b5c72da3
title: Aprendizagem de reforço com Q-Learning
challengeType: 11
videoId: Cf7DSU0gVb4
+bilibiliIds:
+ aid: 463025802
+ bvid: BV1iL411x7L6
+ cid: 409138811
dashedName: reinforcement-learning-with-q-learning
---