diff --git a/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.cs.png b/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.cs.png
new file mode 100644
index 00000000..1ba4f5c7
Binary files /dev/null and b/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.cs.png differ
diff --git a/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.hu.png b/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.hu.png
new file mode 100644
index 00000000..1ba4f5c7
Binary files /dev/null and b/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.hu.png differ
diff --git a/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.sw.png b/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.sw.png
new file mode 100644
index 00000000..1ba4f5c7
Binary files /dev/null and b/translated_images/IMG_5305.aa291c8812a9f1e5b08f3e789f9858e9eacc88c4bbc23296df1bffbbd9c671b3.sw.png differ
diff --git a/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.cs.png b/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.cs.png
new file mode 100644
index 00000000..3cac91bb
Binary files /dev/null and b/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.cs.png differ
diff --git a/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.hu.png b/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.hu.png
new file mode 100644
index 00000000..3cac91bb
Binary files /dev/null and b/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.hu.png differ
diff --git a/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.sw.png b/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.sw.png
new file mode 100644
index 00000000..3cac91bb
Binary files /dev/null and b/translated_images/IMG_5306.d575b9ab7025877b0ceba872490fa561edf3c4fcd5e8cca4ae2607a309d48c50.sw.png differ
diff --git a/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.cs.png b/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.cs.png
new file mode 100644
index 00000000..967e6539
Binary files /dev/null and b/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.cs.png differ
diff --git a/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.hu.png b/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.hu.png
new file mode 100644
index 00000000..967e6539
Binary files /dev/null and b/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.hu.png differ
diff --git a/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.sw.png b/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.sw.png
new file mode 100644
index 00000000..967e6539
Binary files /dev/null and b/translated_images/IMG_5307.f9c9b8361a8aa7345cc6e8ae05cf6b7583d43d3c37ecfbd76d3fdc531e3ac59c.sw.png differ
diff --git a/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.cs.png b/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.cs.png
new file mode 100644
index 00000000..247c1dd6
Binary files /dev/null and b/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.cs.png differ
diff --git a/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.hu.png b/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.hu.png
new file mode 100644
index 00000000..247c1dd6
Binary files /dev/null and b/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.hu.png differ
diff --git a/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.sw.png b/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.sw.png
new file mode 100644
index 00000000..247c1dd6
Binary files /dev/null and b/translated_images/IMG_5308.cbd6ed7007e6906012162c19b9e4097936c57873cdb2e54159899066c4281dc5.sw.png differ
diff --git a/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.cs.png b/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.cs.png
new file mode 100644
index 00000000..e89d81c4
Binary files /dev/null and b/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.cs.png differ
diff --git a/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.hu.png b/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.hu.png
new file mode 100644
index 00000000..e89d81c4
Binary files /dev/null and b/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.hu.png differ
diff --git a/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.sw.png b/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.sw.png
new file mode 100644
index 00000000..e89d81c4
Binary files /dev/null and b/translated_images/IMG_5309.23fbc3b6667bfb64fa44804f835f38885ad37d02b0a1c1c6e8d89f9a78ba19b4.sw.png differ
diff --git a/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.cs.png b/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.cs.png
new file mode 100644
index 00000000..0237836d
Binary files /dev/null and b/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.cs.png differ
diff --git a/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.hu.png b/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.hu.png
new file mode 100644
index 00000000..0237836d
Binary files /dev/null and b/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.hu.png differ
diff --git a/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.sw.png b/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.sw.png
new file mode 100644
index 00000000..0237836d
Binary files /dev/null and b/translated_images/IMG_5310.0ee0eb2fbc1c2d0e2d331e74d32b371a4086c07b0839817e9d6b7d4b5c98fc60.sw.png differ
diff --git a/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.cs.png b/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.cs.png
new file mode 100644
index 00000000..4229fee0
Binary files /dev/null and b/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.cs.png differ
diff --git a/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.hu.png b/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.hu.png
new file mode 100644
index 00000000..4229fee0
Binary files /dev/null and b/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.hu.png differ
diff --git a/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.sw.png b/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.sw.png
new file mode 100644
index 00000000..4229fee0
Binary files /dev/null and b/translated_images/IMG_5311.8c90da6446c2d8c2ad70dd9e64f29b2b6f2b4d117f8502c3181be66297cc84da.sw.png differ
diff --git a/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.cs.png b/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.cs.png
new file mode 100644
index 00000000..9b503ac8
Binary files /dev/null and b/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.cs.png differ
diff --git a/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.hu.png b/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.hu.png
new file mode 100644
index 00000000..9b503ac8
Binary files /dev/null and b/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.hu.png differ
diff --git a/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.sw.png b/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.sw.png
new file mode 100644
index 00000000..9b503ac8
Binary files /dev/null and b/translated_images/IMG_5312.a45550ddd8ce8e654919361d52b919e2f8b1dbd01439268b5d3b813133a4e19b.sw.png differ
diff --git a/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.cs.png b/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.cs.png
new file mode 100644
index 00000000..c98b7aaf
Binary files /dev/null and b/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.cs.png differ
diff --git a/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.hu.png b/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.hu.png
new file mode 100644
index 00000000..c98b7aaf
Binary files /dev/null and b/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.hu.png differ
diff --git a/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.sw.png b/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.sw.png
new file mode 100644
index 00000000..c98b7aaf
Binary files /dev/null and b/translated_images/IMG_5313.ed1b45211271dbd23dc596ce9f72078aba665bd5f21088a616a85dd966100427.sw.png differ
diff --git a/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.cs.png b/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.cs.png
new file mode 100644
index 00000000..706f83bc
Binary files /dev/null and b/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.cs.png differ
diff --git a/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.hu.png b/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.hu.png
new file mode 100644
index 00000000..706f83bc
Binary files /dev/null and b/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.hu.png differ
diff --git a/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.sw.png b/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.sw.png
new file mode 100644
index 00000000..706f83bc
Binary files /dev/null and b/translated_images/IMG_5314.c2203206a05a74b5a4f10a68bbe274e65849a63e1fefe008b2c94be4ae86839c.sw.png differ
diff --git a/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.cs.png b/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.cs.png
new file mode 100644
index 00000000..76bec4da
Binary files /dev/null and b/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.cs.png differ
diff --git a/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.hu.png b/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.hu.png
new file mode 100644
index 00000000..76bec4da
Binary files /dev/null and b/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.hu.png differ
diff --git a/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.sw.png b/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.sw.png
new file mode 100644
index 00000000..76bec4da
Binary files /dev/null and b/translated_images/IMG_5315.f698228e0e031bd430efcfab0d08b00d9f3af5289133ce88a9f56c0c3478cd71.sw.png differ
diff --git a/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.cs.png b/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.cs.png
new file mode 100644
index 00000000..b49060a2
Binary files /dev/null and b/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.cs.png differ
diff --git a/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.hu.png b/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.hu.png
new file mode 100644
index 00000000..b49060a2
Binary files /dev/null and b/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.hu.png differ
diff --git a/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.sw.png b/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.sw.png
new file mode 100644
index 00000000..b49060a2
Binary files /dev/null and b/translated_images/IMG_5316.29dc70d802ce83497258426614e3e1426a91d6f9777e853daa4a9351b841b94f.sw.png differ
diff --git a/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.cs.png b/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.cs.png
new file mode 100644
index 00000000..3ca064d5
Binary files /dev/null and b/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.cs.png differ
diff --git a/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.hu.png b/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.hu.png
new file mode 100644
index 00000000..3ca064d5
Binary files /dev/null and b/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.hu.png differ
diff --git a/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.sw.png b/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.sw.png
new file mode 100644
index 00000000..3ca064d5
Binary files /dev/null and b/translated_images/IMG_5317.ed81e4c1ca5046dc50613049e39c905157fbb318ea19db44c738db513ac501b1.sw.png differ
diff --git a/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.cs.png b/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.cs.png
new file mode 100644
index 00000000..1f5f2412
Binary files /dev/null and b/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.cs.png differ
diff --git a/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.hu.png b/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.hu.png
new file mode 100644
index 00000000..1f5f2412
Binary files /dev/null and b/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.hu.png differ
diff --git a/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.sw.png b/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.sw.png
new file mode 100644
index 00000000..1f5f2412
Binary files /dev/null and b/translated_images/IMG_5318.15dfffeb7f47abf7ca0393628024c1fd45761193ab23185c315e899bd0e7048b.sw.png differ
diff --git a/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.cs.png b/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.cs.png
new file mode 100644
index 00000000..2953cea1
Binary files /dev/null and b/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.cs.png differ
diff --git a/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.hu.png b/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.hu.png
new file mode 100644
index 00000000..2953cea1
Binary files /dev/null and b/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.hu.png differ
diff --git a/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.sw.png b/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.sw.png
new file mode 100644
index 00000000..2953cea1
Binary files /dev/null and b/translated_images/IMG_5319.b549b1fff0dcf143c2483044d0519a3c6dc3de12c88860911b378688e7a4e01b.sw.png differ
diff --git a/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.cs.png b/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.cs.png
new file mode 100644
index 00000000..2ce7dedf
Binary files /dev/null and b/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.cs.png differ
diff --git a/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.hu.png b/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.hu.png
new file mode 100644
index 00000000..2ce7dedf
Binary files /dev/null and b/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.hu.png differ
diff --git a/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.sw.png b/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.sw.png
new file mode 100644
index 00000000..2ce7dedf
Binary files /dev/null and b/translated_images/IMG_5320.8268d3f61972f348df46401d107399af17512db9ef769f6a44c6cbb18faba998.sw.png differ
diff --git a/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.cs.png b/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.cs.png
new file mode 100644
index 00000000..157c08c6
Binary files /dev/null and b/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.cs.png differ
diff --git a/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.hu.png b/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.hu.png
new file mode 100644
index 00000000..157c08c6
Binary files /dev/null and b/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.hu.png differ
diff --git a/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.sw.png b/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.sw.png
new file mode 100644
index 00000000..157c08c6
Binary files /dev/null and b/translated_images/IMG_5321.b207cf143a59458d150cb1fbd44c3678d14f9cfffe77a0ec64e1cdfe1436df1c.sw.png differ
diff --git a/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.cs.png b/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.cs.png
new file mode 100644
index 00000000..031361a6
Binary files /dev/null and b/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.cs.png differ
diff --git a/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.hu.png b/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.hu.png
new file mode 100644
index 00000000..031361a6
Binary files /dev/null and b/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.hu.png differ
diff --git a/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.sw.png b/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.sw.png
new file mode 100644
index 00000000..031361a6
Binary files /dev/null and b/translated_images/IMG_5322.974809b9461a9e200e99ae46142b4885e093e5b9b668e0fd818de461e27856a7.sw.png differ
diff --git a/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.cs.png b/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.cs.png
new file mode 100644
index 00000000..3a43eb23
Binary files /dev/null and b/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.cs.png differ
diff --git a/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.hu.png b/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.hu.png
new file mode 100644
index 00000000..3a43eb23
Binary files /dev/null and b/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.hu.png differ
diff --git a/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.sw.png b/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.sw.png
new file mode 100644
index 00000000..3a43eb23
Binary files /dev/null and b/translated_images/IMG_5323.4939fa17958f291bb856032bbd044a709c0199b2e3846f1801a7836d4455dd26.sw.png differ
diff --git a/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.cs.png b/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.cs.png
new file mode 100644
index 00000000..7c9552e3
Binary files /dev/null and b/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.cs.png differ
diff --git a/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.hu.png b/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.hu.png
new file mode 100644
index 00000000..7c9552e3
Binary files /dev/null and b/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.hu.png differ
diff --git a/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.sw.png b/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.sw.png
new file mode 100644
index 00000000..7c9552e3
Binary files /dev/null and b/translated_images/IMG_5324.0afbc6f0caceb1a341a9606fc9b879938eebebbc8401fce37dff2b167ed4b410.sw.png differ
diff --git a/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.cs.png b/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.cs.png
new file mode 100644
index 00000000..78f695b7
Binary files /dev/null and b/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.cs.png differ
diff --git a/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.hu.png b/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.hu.png
new file mode 100644
index 00000000..78f695b7
Binary files /dev/null and b/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.hu.png differ
diff --git a/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.sw.png b/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.sw.png
new file mode 100644
index 00000000..78f695b7
Binary files /dev/null and b/translated_images/IMG_5325.9e9d9e9b85a10b06ac6038bf88ef91ef56fd371ed9e67b53495cd6878019faf9.sw.png differ
diff --git a/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.cs.png b/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.cs.png
new file mode 100644
index 00000000..77f563fb
Binary files /dev/null and b/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.cs.png differ
diff --git a/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.hu.png b/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.hu.png
new file mode 100644
index 00000000..77f563fb
Binary files /dev/null and b/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.hu.png differ
diff --git a/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.sw.png b/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.sw.png
new file mode 100644
index 00000000..77f563fb
Binary files /dev/null and b/translated_images/IMG_5326.35bbc9e054c704d0418a8ba7418aa38f51baee13bd2b00cfe8300e1500fa9f32.sw.png differ
diff --git a/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.cs.png b/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.cs.png
new file mode 100644
index 00000000..8dccd514
Binary files /dev/null and b/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.cs.png differ
diff --git a/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.hu.png b/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.hu.png
new file mode 100644
index 00000000..8dccd514
Binary files /dev/null and b/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.hu.png differ
diff --git a/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.sw.png b/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.sw.png
new file mode 100644
index 00000000..8dccd514
Binary files /dev/null and b/translated_images/IMG_5327.804b63a605b5a77a7b60c2fbf370be0f7364f2b5acb98c736420728e61845b62.sw.png differ
diff --git a/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.cs.png b/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.cs.png
new file mode 100644
index 00000000..b75e015e
Binary files /dev/null and b/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.cs.png differ
diff --git a/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.hu.png b/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.hu.png
new file mode 100644
index 00000000..b75e015e
Binary files /dev/null and b/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.hu.png differ
diff --git a/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.sw.png b/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.sw.png
new file mode 100644
index 00000000..b75e015e
Binary files /dev/null and b/translated_images/IMG_5328.925a9da23d96759f6c7c13bfcd94b8063bb5082d2e8a0431058c057e6d14446b.sw.png differ
diff --git a/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.cs.png b/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.cs.png
new file mode 100644
index 00000000..5bfed282
Binary files /dev/null and b/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.cs.png differ
diff --git a/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.hu.png b/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.hu.png
new file mode 100644
index 00000000..5bfed282
Binary files /dev/null and b/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.hu.png differ
diff --git a/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.sw.png b/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.sw.png
new file mode 100644
index 00000000..5bfed282
Binary files /dev/null and b/translated_images/IMG_5329.27da5fcbc3336773e94bbd2640df07799c76051bf97d2db7891d47bc462c6e09.sw.png differ
diff --git a/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.cs.png b/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.cs.png
new file mode 100644
index 00000000..34ca765c
Binary files /dev/null and b/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.cs.png differ
diff --git a/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.hu.png b/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.hu.png
new file mode 100644
index 00000000..34ca765c
Binary files /dev/null and b/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.hu.png differ
diff --git a/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.sw.png b/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.sw.png
new file mode 100644
index 00000000..34ca765c
Binary files /dev/null and b/translated_images/IMG_5330.3db3d5ea01c8cca2ae41cf5ea501a0a836569a3abbc2ae95696e0ad1dd005b6a.sw.png differ
diff --git a/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.cs.png b/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.cs.png
new file mode 100644
index 00000000..d1f7bc09
Binary files /dev/null and b/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.cs.png differ
diff --git a/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.hu.png b/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.hu.png
new file mode 100644
index 00000000..d1f7bc09
Binary files /dev/null and b/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.hu.png differ
diff --git a/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.sw.png b/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.sw.png
new file mode 100644
index 00000000..d1f7bc09
Binary files /dev/null and b/translated_images/IMG_5331.181987d3d094472fbf569a61760fadf282575f2821138de50007e408fd63182e.sw.png differ
diff --git a/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.cs.png b/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.cs.png
new file mode 100644
index 00000000..c215b446
Binary files /dev/null and b/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.cs.png differ
diff --git a/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.hu.png b/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.hu.png
new file mode 100644
index 00000000..c215b446
Binary files /dev/null and b/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.hu.png differ
diff --git a/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.sw.png b/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.sw.png
new file mode 100644
index 00000000..c215b446
Binary files /dev/null and b/translated_images/IMG_5332.4beed56eaa5158e3785dbacb53c9670a0ef1699ce386528f4bb9bad50adf88ca.sw.png differ
diff --git a/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.cs.png b/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.cs.png
new file mode 100644
index 00000000..63f58daa
Binary files /dev/null and b/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.cs.png differ
diff --git a/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.hu.png b/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.hu.png
new file mode 100644
index 00000000..63f58daa
Binary files /dev/null and b/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.hu.png differ
diff --git a/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.sw.png b/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.sw.png
new file mode 100644
index 00000000..63f58daa
Binary files /dev/null and b/translated_images/IMG_5333.53c3364c2ee0e7bb5db0e299915faaf31e47bb99ad045ec8f6de6ca23d323f47.sw.png differ
diff --git a/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.cs.png b/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.cs.png
new file mode 100644
index 00000000..3eb38501
Binary files /dev/null and b/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.cs.png differ
diff --git a/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.hu.png b/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.hu.png
new file mode 100644
index 00000000..3eb38501
Binary files /dev/null and b/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.hu.png differ
diff --git a/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.sw.png b/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.sw.png
new file mode 100644
index 00000000..3eb38501
Binary files /dev/null and b/translated_images/IMG_5334.979472e433948c109b122ae4bbd0f96971dc2e7b1e64615776ebb7337a97e183.sw.png differ
diff --git a/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.cs.png b/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.cs.png
new file mode 100644
index 00000000..4f960870
Binary files /dev/null and b/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.cs.png differ
diff --git a/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.hu.png b/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.hu.png
new file mode 100644
index 00000000..4f960870
Binary files /dev/null and b/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.hu.png differ
diff --git a/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.sw.png b/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.sw.png
new file mode 100644
index 00000000..4f960870
Binary files /dev/null and b/translated_images/IMG_5335.9f5bfba69a8d5a901c3e3b994a69f62a00d73ef9209b85561553d2ae99a56615.sw.png differ
diff --git a/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.cs.png b/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.cs.png
new file mode 100644
index 00000000..ca5b5882
Binary files /dev/null and b/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.cs.png differ
diff --git a/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.hu.png b/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.hu.png
new file mode 100644
index 00000000..ca5b5882
Binary files /dev/null and b/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.hu.png differ
diff --git a/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.sw.png b/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.sw.png
new file mode 100644
index 00000000..ca5b5882
Binary files /dev/null and b/translated_images/IMG_5336.1b46586fdec957670ea71c1bd68c26f73aa95cd5671d057328fd198640729db7.sw.png differ
diff --git a/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.cs.png b/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.cs.png
new file mode 100644
index 00000000..2c3440cd
Binary files /dev/null and b/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.cs.png differ
diff --git a/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.hu.png b/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.hu.png
new file mode 100644
index 00000000..2c3440cd
Binary files /dev/null and b/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.hu.png differ
diff --git a/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.sw.png b/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.sw.png
new file mode 100644
index 00000000..2c3440cd
Binary files /dev/null and b/translated_images/IMG_5337.91c82be4d37029b03cbb07553d92b9d2dd672e22a07fee6453cbc40568fbdef3.sw.png differ
diff --git a/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.cs.png b/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.cs.png
new file mode 100644
index 00000000..5294a9dc
Binary files /dev/null and b/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.cs.png differ
diff --git a/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.hu.png b/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.hu.png
new file mode 100644
index 00000000..5294a9dc
Binary files /dev/null and b/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.hu.png differ
diff --git a/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.sw.png b/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.sw.png
new file mode 100644
index 00000000..5294a9dc
Binary files /dev/null and b/translated_images/IMG_5338.9ab356541448923b528f2dedecd72d7ecd07d53cc69118aeb861c39dccb8b8cc.sw.png differ
diff --git a/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.cs.png b/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.cs.png
new file mode 100644
index 00000000..912ac4ca
Binary files /dev/null and b/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.cs.png differ
diff --git a/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.hu.png b/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.hu.png
new file mode 100644
index 00000000..912ac4ca
Binary files /dev/null and b/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.hu.png differ
diff --git a/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.sw.png b/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.sw.png
new file mode 100644
index 00000000..912ac4ca
Binary files /dev/null and b/translated_images/IMG_5340.8440651b3ce1dd35d9962036330b32a600fb3f59078a581a05c93920c5012b3a.sw.png differ
diff --git a/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.cs.png b/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.cs.png
new file mode 100644
index 00000000..8e47de7d
Binary files /dev/null and b/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.cs.png differ
diff --git a/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.hu.png b/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.hu.png
new file mode 100644
index 00000000..8e47de7d
Binary files /dev/null and b/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.hu.png differ
diff --git a/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.sw.png b/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.sw.png
new file mode 100644
index 00000000..8e47de7d
Binary files /dev/null and b/translated_images/IMG_5341.a1aa041c42dbc534c033447b06f0546fdd779b3ed5034992ded08a45a960fff5.sw.png differ
diff --git a/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.cs.png b/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.cs.png
new file mode 100644
index 00000000..b3c98d83
Binary files /dev/null and b/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.cs.png differ
diff --git a/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.hu.png b/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.hu.png
new file mode 100644
index 00000000..b3c98d83
Binary files /dev/null and b/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.hu.png differ
diff --git a/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.sw.png b/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.sw.png
new file mode 100644
index 00000000..b3c98d83
Binary files /dev/null and b/translated_images/IMG_5342.9f3b93d9fab90d3b3c1936edb55768b57024c9ebe88a214be315f5ebb083e45d.sw.png differ
diff --git a/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.cs.png b/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.cs.png
new file mode 100644
index 00000000..1d494613
Binary files /dev/null and b/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.cs.png differ
diff --git a/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.hu.png b/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.hu.png
new file mode 100644
index 00000000..1d494613
Binary files /dev/null and b/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.hu.png differ
diff --git a/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.sw.png b/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.sw.png
new file mode 100644
index 00000000..1d494613
Binary files /dev/null and b/translated_images/IMG_5343.fa30105d3c10cad2079ca2b2f023e9dab8f82824a235be61837d7e9d09d8d067.sw.png differ
diff --git a/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.cs.png b/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.cs.png
new file mode 100644
index 00000000..47ced39a
Binary files /dev/null and b/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.cs.png differ
diff --git a/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.hu.png b/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.hu.png
new file mode 100644
index 00000000..47ced39a
Binary files /dev/null and b/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.hu.png differ
diff --git a/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.sw.png b/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.sw.png
new file mode 100644
index 00000000..47ced39a
Binary files /dev/null and b/translated_images/IMG_5344.acfcd61ee5281321426b2d93efeeb01a60505e73b4c5ee6224c7fa375027b9d8.sw.png differ
diff --git a/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.cs.png b/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.cs.png
new file mode 100644
index 00000000..88d5c896
Binary files /dev/null and b/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.cs.png differ
diff --git a/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.hu.png b/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.hu.png
new file mode 100644
index 00000000..88d5c896
Binary files /dev/null and b/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.hu.png differ
diff --git a/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.sw.png b/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.sw.png
new file mode 100644
index 00000000..88d5c896
Binary files /dev/null and b/translated_images/IMG_5345.3d305ee2bb4ee8040102a8d1922cdf0450f619c6824add16014a4c0887c18b1d.sw.png differ
diff --git a/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.cs.png b/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.cs.png
new file mode 100644
index 00000000..e0706533
Binary files /dev/null and b/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.cs.png differ
diff --git a/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.hu.png b/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.hu.png
new file mode 100644
index 00000000..e0706533
Binary files /dev/null and b/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.hu.png differ
diff --git a/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.sw.png b/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.sw.png
new file mode 100644
index 00000000..e0706533
Binary files /dev/null and b/translated_images/IMG_5346.281dcc267f69c70b2bc2353b5e8289617c7bf3608f889dae8a582b9376a9ae7d.sw.png differ
diff --git a/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.cs.png b/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.cs.png
new file mode 100644
index 00000000..a1f17249
Binary files /dev/null and b/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.cs.png differ
diff --git a/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.hu.png b/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.hu.png
new file mode 100644
index 00000000..a1f17249
Binary files /dev/null and b/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.hu.png differ
diff --git a/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.sw.png b/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.sw.png
new file mode 100644
index 00000000..a1f17249
Binary files /dev/null and b/translated_images/IMG_5347.48a4a981e76910ae1c65bf75102883039be5f0ded32b73f3d09d855f5b7dc977.sw.png differ
diff --git a/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.cs.png b/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.cs.png
new file mode 100644
index 00000000..3adc61ef
Binary files /dev/null and b/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.cs.png differ
diff --git a/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.hu.png b/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.hu.png
new file mode 100644
index 00000000..3adc61ef
Binary files /dev/null and b/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.hu.png differ
diff --git a/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.sw.png b/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.sw.png
new file mode 100644
index 00000000..3adc61ef
Binary files /dev/null and b/translated_images/IMG_5348.3961d3b444537c131299f8906dc4e2f7c3c172591ffeacb45719ec3d3718b625.sw.png differ
diff --git a/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.cs.png b/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.cs.png
new file mode 100644
index 00000000..1c3c8d53
Binary files /dev/null and b/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.cs.png differ
diff --git a/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.hu.png b/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.hu.png
new file mode 100644
index 00000000..1c3c8d53
Binary files /dev/null and b/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.hu.png differ
diff --git a/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.sw.png b/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.sw.png
new file mode 100644
index 00000000..1c3c8d53
Binary files /dev/null and b/translated_images/IMG_5349.1f0ec7fbf8807b3bf991dd5400cfb69ded9fe53059bd1e71934f4dbd7ff963db.sw.png differ
diff --git a/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.cs.jpg b/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.cs.jpg
new file mode 100644
index 00000000..0f4a9a38
Binary files /dev/null and b/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.cs.jpg differ
diff --git a/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.hu.jpg b/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.hu.jpg
new file mode 100644
index 00000000..0f4a9a38
Binary files /dev/null and b/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.hu.jpg differ
diff --git a/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.sw.jpg b/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.sw.jpg
new file mode 100644
index 00000000..0f4a9a38
Binary files /dev/null and b/translated_images/Roadmap.bb1dec285dda0eda691788b95ddfc96d31d76bb7649e3f04a135e4ad395f323e.sw.jpg differ
diff --git a/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.cs.png b/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.cs.png
new file mode 100644
index 00000000..32dab60c
Binary files /dev/null and b/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.cs.png differ
diff --git a/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.hu.png b/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.hu.png
new file mode 100644
index 00000000..32dab60c
Binary files /dev/null and b/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.hu.png differ
diff --git a/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.sw.png b/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.sw.png
new file mode 100644
index 00000000..32dab60c
Binary files /dev/null and b/translated_images/amqp.804bd4fce83301578f19af1b877f8ce87a6473a3616fb6c3f901fe4041ab6c96.sw.png differ
diff --git a/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.cs.png b/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.cs.png
new file mode 100644
index 00000000..78e9b675
Binary files /dev/null and b/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.cs.png differ
diff --git a/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.hu.png b/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.hu.png
new file mode 100644
index 00000000..78e9b675
Binary files /dev/null and b/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.hu.png differ
diff --git a/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.sw.png b/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.sw.png
new file mode 100644
index 00000000..78e9b675
Binary files /dev/null and b/translated_images/analog-sensor-voltage.3b6f3153922473997cae6f71a6110d89a020a8a1838a83fba4f97e8fa6cef3ac.sw.png differ
diff --git a/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.cs.png b/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.cs.png
new file mode 100644
index 00000000..fb87dd71
Binary files /dev/null and b/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.cs.png differ
diff --git a/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.hu.png b/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.hu.png
new file mode 100644
index 00000000..fb87dd71
Binary files /dev/null and b/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.hu.png differ
diff --git a/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.sw.png b/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.sw.png
new file mode 100644
index 00000000..fb87dd71
Binary files /dev/null and b/translated_images/arducam-wio-terminal-connections.a4d5a4049bdb5ab800a2877389fc6ecf5e4ff307e6451ff56c517e6786467d0a.sw.png differ
diff --git a/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.cs.png b/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.cs.png
new file mode 100644
index 00000000..acaa9a02
Binary files /dev/null and b/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.cs.png differ
diff --git a/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.hu.png b/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.hu.png
new file mode 100644
index 00000000..acaa9a02
Binary files /dev/null and b/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.hu.png differ
diff --git a/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.sw.png b/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.sw.png
new file mode 100644
index 00000000..acaa9a02
Binary files /dev/null and b/translated_images/arducam.20e4e4cbb268296570b5914e20d6c349fc42ddac9ed4e1b9deba2188204eebae.sw.png differ
diff --git a/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.cs.png b/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.cs.png
new file mode 100644
index 00000000..b6afaa8a
Binary files /dev/null and b/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.cs.png differ
diff --git a/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.hu.png b/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.hu.png
new file mode 100644
index 00000000..b6afaa8a
Binary files /dev/null and b/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.hu.png differ
diff --git a/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.sw.png b/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.sw.png
new file mode 100644
index 00000000..b6afaa8a
Binary files /dev/null and b/translated_images/arduino-sketch.79590cb837ff7a7c6a68d1afda6cab83fd53d3bb1bd9a8bf2eaf8d693a4d3ea6.sw.png differ
diff --git a/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.cs.png b/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.cs.png
new file mode 100644
index 00000000..18f92ede
Binary files /dev/null and b/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.cs.png differ
diff --git a/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.hu.png b/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.hu.png
new file mode 100644
index 00000000..18f92ede
Binary files /dev/null and b/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.hu.png differ
diff --git a/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.sw.png b/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.sw.png
new file mode 100644
index 00000000..18f92ede
Binary files /dev/null and b/translated_images/assignment-1-flow.7552a51acb1a5ec858dca6e855cdbb44206434006df8ba3799a25afcdab1665d.sw.png differ
diff --git a/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.cs.png b/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.cs.png
new file mode 100644
index 00000000..e1eb6df0
Binary files /dev/null and b/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.cs.png differ
diff --git a/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.hu.png b/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.hu.png
new file mode 100644
index 00000000..e1eb6df0
Binary files /dev/null and b/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.hu.png differ
diff --git a/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.sw.png b/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.sw.png
new file mode 100644
index 00000000..e1eb6df0
Binary files /dev/null and b/translated_images/assignment-1-internet-flow.3256feab5f052fd273bf4e331157c574c2c3fa42e479836fc9c3586f41db35a5.sw.png differ
diff --git a/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.cs.png b/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.cs.png
new file mode 100644
index 00000000..dfcfde45
Binary files /dev/null and b/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.cs.png differ
diff --git a/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.hu.png b/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.hu.png
new file mode 100644
index 00000000..dfcfde45
Binary files /dev/null and b/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.hu.png differ
diff --git a/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.sw.png b/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.sw.png
new file mode 100644
index 00000000..dfcfde45
Binary files /dev/null and b/translated_images/azure-container-registry-logo.09494206991d4b295025ebff7d4e2900325e527a59184ffbc8464b6ab59654be.sw.png differ
diff --git a/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.cs.png b/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.cs.png
new file mode 100644
index 00000000..44af1896
Binary files /dev/null and b/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.cs.png differ
diff --git a/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.hu.png b/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.hu.png
new file mode 100644
index 00000000..44af1896
Binary files /dev/null and b/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.hu.png differ
diff --git a/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.sw.png b/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.sw.png
new file mode 100644
index 00000000..44af1896
Binary files /dev/null and b/translated_images/azure-functions-logo.1cfc8e3204c9c44aaf80fcf406fc8544d80d7f00f8d3e8ed6fed764563e17564.sw.png differ
diff --git a/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.cs.png b/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.cs.png
new file mode 100644
index 00000000..6d749e6c
Binary files /dev/null and b/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.cs.png differ
diff --git a/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.hu.png b/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.hu.png
new file mode 100644
index 00000000..6d749e6c
Binary files /dev/null and b/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.hu.png differ
diff --git a/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.sw.png b/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.sw.png
new file mode 100644
index 00000000..6d749e6c
Binary files /dev/null and b/translated_images/azure-iot-edge-logo.c1c076749b5cba2e8755262fadc2f19ca1146b948d76990b1229199ac2292d79.sw.png differ
diff --git a/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.cs.png b/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.cs.png
new file mode 100644
index 00000000..7485e36c
Binary files /dev/null and b/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.cs.png differ
diff --git a/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.hu.png b/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.hu.png
new file mode 100644
index 00000000..7485e36c
Binary files /dev/null and b/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.hu.png differ
diff --git a/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.sw.png b/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.sw.png
new file mode 100644
index 00000000..7485e36c
Binary files /dev/null and b/translated_images/azure-iot-hub-logo.28a19de76d0a1932464d858f7558712bcdace3e5ec69c434d482ed7ce41c3a26.sw.png differ
diff --git a/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.cs.png b/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.cs.png
new file mode 100644
index 00000000..0f499097
Binary files /dev/null and b/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.cs.png differ
diff --git a/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.hu.png b/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.hu.png
new file mode 100644
index 00000000..0f499097
Binary files /dev/null and b/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.hu.png differ
diff --git a/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.sw.png b/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.sw.png
new file mode 100644
index 00000000..0f499097
Binary files /dev/null and b/translated_images/azure-maps-logo.35d01dcfbd81fe6140e94257aaa1538f785a58c91576d14e0ebe7a2f6c694b99.sw.png differ
diff --git a/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.cs.png b/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.cs.png
new file mode 100644
index 00000000..710c440c
Binary files /dev/null and b/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.cs.png differ
diff --git a/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.hu.png b/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.hu.png
new file mode 100644
index 00000000..710c440c
Binary files /dev/null and b/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.hu.png differ
diff --git a/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.sw.png b/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.sw.png
new file mode 100644
index 00000000..710c440c
Binary files /dev/null and b/translated_images/azure-region-existing.73f704604f2aa6cb9b5a49ed40e93d4fd81ae3f4e6af4a8ca504023902832f56.sw.png differ
diff --git a/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.cs.png b/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.cs.png
new file mode 100644
index 00000000..24cecced
Binary files /dev/null and b/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.cs.png differ
diff --git a/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.hu.png b/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.hu.png
new file mode 100644
index 00000000..24cecced
Binary files /dev/null and b/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.hu.png differ
diff --git a/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.sw.png b/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.sw.png
new file mode 100644
index 00000000..24cecced
Binary files /dev/null and b/translated_images/azure-region-planned-expansion.a5074a1e8af74f156a73552d502429e5b126ea5019274d767ecb4b9afdad442b.sw.png differ
diff --git a/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.cs.png b/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.cs.png
new file mode 100644
index 00000000..b36025d9
Binary files /dev/null and b/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.cs.png differ
diff --git a/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.hu.png b/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.hu.png
new file mode 100644
index 00000000..b36025d9
Binary files /dev/null and b/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.hu.png differ
diff --git a/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.sw.png b/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.sw.png
new file mode 100644
index 00000000..b36025d9
Binary files /dev/null and b/translated_images/azure-speech-logo.a1f08c4befb0159f2cb5d692d3baf5b599e7b44759d316da907bda1508f46a4a.sw.png differ
diff --git a/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.cs.png b/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.cs.png
new file mode 100644
index 00000000..b21a4bed
Binary files /dev/null and b/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.cs.png differ
diff --git a/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.hu.png b/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.hu.png
new file mode 100644
index 00000000..b21a4bed
Binary files /dev/null and b/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.hu.png differ
diff --git a/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.sw.png b/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.sw.png
new file mode 100644
index 00000000..b21a4bed
Binary files /dev/null and b/translated_images/azure-storage-logo.605c0f602c640d482a80f1b35a2629a32d595711b7ab1d7ceea843250615ff32.sw.png differ
diff --git a/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.cs.png b/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.cs.png
new file mode 100644
index 00000000..8da6f9a4
Binary files /dev/null and b/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.cs.png differ
diff --git a/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.hu.png b/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.hu.png
new file mode 100644
index 00000000..8da6f9a4
Binary files /dev/null and b/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.hu.png differ
diff --git a/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.sw.png b/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.sw.png
new file mode 100644
index 00000000..8da6f9a4
Binary files /dev/null and b/translated_images/azure-translator-logo.c6ed3a4a433edfd2f11577eca105412c50b8396b194cbbd730723dd1d0793bcd.sw.png differ
diff --git a/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.cs.jpg b/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.cs.jpg
new file mode 100644
index 00000000..437f3d07
Binary files /dev/null and b/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.cs.jpg differ
diff --git a/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.hu.jpg b/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.hu.jpg
new file mode 100644
index 00000000..437f3d07
Binary files /dev/null and b/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.hu.jpg differ
diff --git a/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.sw.jpg b/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.sw.jpg
new file mode 100644
index 00000000..437f3d07
Binary files /dev/null and b/translated_images/banana-arducam.be1b32d4267a8194b0fd042362e56faa431da9cd4af172051b37243ea9be0256.sw.jpg differ
diff --git a/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.cs.png b/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.cs.png
new file mode 100644
index 00000000..cc61fb13
Binary files /dev/null and b/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.cs.png differ
diff --git a/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.hu.png b/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.hu.png
new file mode 100644
index 00000000..cc61fb13
Binary files /dev/null and b/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.hu.png differ
diff --git a/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.sw.png b/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.sw.png
new file mode 100644
index 00000000..cc61fb13
Binary files /dev/null and b/translated_images/banana-picture-compare.174df164dc326a42cf7fb051a7497e6113c620e91552d92ca914220305d47d9a.sw.png differ
diff --git a/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.cs.png b/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.cs.png
new file mode 100644
index 00000000..3472b1d9
Binary files /dev/null and b/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.cs.png differ
diff --git a/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.hu.png b/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.hu.png
new file mode 100644
index 00000000..3472b1d9
Binary files /dev/null and b/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.hu.png differ
diff --git a/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.sw.png b/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.sw.png
new file mode 100644
index 00000000..3472b1d9
Binary files /dev/null and b/translated_images/banana-ripe-1.6ed72365ffc9230064fbaefdb698bde74529ad5b3c747a4a28421b534730fa5f.sw.png differ
diff --git a/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.cs.png b/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.cs.png
new file mode 100644
index 00000000..0bbca602
Binary files /dev/null and b/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.cs.png differ
diff --git a/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.hu.png b/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.hu.png
new file mode 100644
index 00000000..0bbca602
Binary files /dev/null and b/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.hu.png differ
diff --git a/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.sw.png b/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.sw.png
new file mode 100644
index 00000000..0bbca602
Binary files /dev/null and b/translated_images/banana-ripe-1.780e9be3a60d8879826126ee1e84e135ffa20ec91697bb759daf7ba0b76c811b.sw.png differ
diff --git a/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.cs.png b/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.cs.png
new file mode 100644
index 00000000..b5775adc
Binary files /dev/null and b/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.cs.png differ
diff --git a/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.hu.png b/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.hu.png
new file mode 100644
index 00000000..b5775adc
Binary files /dev/null and b/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.hu.png differ
diff --git a/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.sw.png b/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.sw.png
new file mode 100644
index 00000000..b5775adc
Binary files /dev/null and b/translated_images/banana-ripe-10.c3d98eb280e7464ffa36da1fa18413db4fd032da973b098bb4978d6d99c1a3af.sw.png differ
diff --git a/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.cs.png b/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.cs.png
new file mode 100644
index 00000000..bc58477a
Binary files /dev/null and b/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.cs.png differ
diff --git a/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.hu.png b/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.hu.png
new file mode 100644
index 00000000..bc58477a
Binary files /dev/null and b/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.hu.png differ
diff --git a/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.sw.png b/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.sw.png
new file mode 100644
index 00000000..bc58477a
Binary files /dev/null and b/translated_images/banana-ripe-11.3d932f292b95b9a202082ce75f5b52ecaf43718721661810b53f7a5a2c4b4133.sw.png differ
diff --git a/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.cs.png b/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.cs.png
new file mode 100644
index 00000000..1b7a40f4
Binary files /dev/null and b/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.cs.png differ
diff --git a/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.hu.png b/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.hu.png
new file mode 100644
index 00000000..1b7a40f4
Binary files /dev/null and b/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.hu.png differ
diff --git a/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.sw.png b/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.sw.png
new file mode 100644
index 00000000..1b7a40f4
Binary files /dev/null and b/translated_images/banana-ripe-12.9f87e663b9da6c8525f3ce63c5c0a1c095e42675e2a6af9b0fddb14ebb1e0b4b.sw.png differ
diff --git a/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.cs.png b/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.cs.png
new file mode 100644
index 00000000..011b07a3
Binary files /dev/null and b/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.cs.png differ
diff --git a/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.hu.png b/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.hu.png
new file mode 100644
index 00000000..011b07a3
Binary files /dev/null and b/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.hu.png differ
diff --git a/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.sw.png b/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.sw.png
new file mode 100644
index 00000000..011b07a3
Binary files /dev/null and b/translated_images/banana-ripe-13.b7402e05160f454309533a578849d7e79f92dd70799428943d7211c2fbb82465.sw.png differ
diff --git a/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.cs.png b/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.cs.png
new file mode 100644
index 00000000..7f9d24ef
Binary files /dev/null and b/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.cs.png differ
diff --git a/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.hu.png b/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.hu.png
new file mode 100644
index 00000000..7f9d24ef
Binary files /dev/null and b/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.hu.png differ
diff --git a/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.sw.png b/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.sw.png
new file mode 100644
index 00000000..7f9d24ef
Binary files /dev/null and b/translated_images/banana-ripe-14.85cf309aa702cfa870286a5f8838ee5875a655074a982bafe5b8d32d4d5819f2.sw.png differ
diff --git a/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.cs.png b/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.cs.png
new file mode 100644
index 00000000..0c6a7067
Binary files /dev/null and b/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.cs.png differ
diff --git a/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.hu.png b/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.hu.png
new file mode 100644
index 00000000..0c6a7067
Binary files /dev/null and b/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.hu.png differ
diff --git a/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.sw.png b/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.sw.png
new file mode 100644
index 00000000..0c6a7067
Binary files /dev/null and b/translated_images/banana-ripe-15.933412eb14a3f8e419c764c8157d1e5f25256972a8dcf450aa630b8c007c8c3d.sw.png differ
diff --git a/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.cs.png b/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.cs.png
new file mode 100644
index 00000000..8f7968a5
Binary files /dev/null and b/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.cs.png differ
diff --git a/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.hu.png b/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.hu.png
new file mode 100644
index 00000000..8f7968a5
Binary files /dev/null and b/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.hu.png differ
diff --git a/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.sw.png b/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.sw.png
new file mode 100644
index 00000000..8f7968a5
Binary files /dev/null and b/translated_images/banana-ripe-16.781a68a01401f89e5e523c88e659a0f9697b7de378571c91e597edc0d0c2eb07.sw.png differ
diff --git a/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.cs.png b/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.cs.png
new file mode 100644
index 00000000..20c6036f
Binary files /dev/null and b/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.cs.png differ
diff --git a/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.hu.png b/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.hu.png
new file mode 100644
index 00000000..20c6036f
Binary files /dev/null and b/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.hu.png differ
diff --git a/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.sw.png b/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.sw.png
new file mode 100644
index 00000000..20c6036f
Binary files /dev/null and b/translated_images/banana-ripe-17.f8e2853a40d3ac450e290036792b75ac4b8da5883536478722fb336d5f66517e.sw.png differ
diff --git a/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.cs.png b/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.cs.png
new file mode 100644
index 00000000..f077b6e9
Binary files /dev/null and b/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.cs.png differ
diff --git a/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.hu.png b/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.hu.png
new file mode 100644
index 00000000..f077b6e9
Binary files /dev/null and b/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.hu.png differ
diff --git a/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.sw.png b/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.sw.png
new file mode 100644
index 00000000..f077b6e9
Binary files /dev/null and b/translated_images/banana-ripe-18.3d05f5f78ecf6f0d74aecdafb8e415851a5333e5dbc016ac1870ab5e4c383b07.sw.png differ
diff --git a/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.cs.png b/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.cs.png
new file mode 100644
index 00000000..484206d5
Binary files /dev/null and b/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.cs.png differ
diff --git a/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.hu.png b/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.hu.png
new file mode 100644
index 00000000..484206d5
Binary files /dev/null and b/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.hu.png differ
diff --git a/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.sw.png b/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.sw.png
new file mode 100644
index 00000000..484206d5
Binary files /dev/null and b/translated_images/banana-ripe-19.ac3b0fc6cf6fdfd5523227bc246c915b228bc3d4bc1c72f6612723ed889023b5.sw.png differ
diff --git a/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.cs.png b/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.cs.png
new file mode 100644
index 00000000..9fa156e2
Binary files /dev/null and b/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.cs.png differ
diff --git a/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.hu.png b/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.hu.png
new file mode 100644
index 00000000..9fa156e2
Binary files /dev/null and b/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.hu.png differ
diff --git a/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.sw.png b/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.sw.png
new file mode 100644
index 00000000..9fa156e2
Binary files /dev/null and b/translated_images/banana-ripe-2.8ab96da692df69f1c78bd3a93acfdb17bc292ac964a3f3bac9249ba1dd1681c3.sw.png differ
diff --git a/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.cs.png b/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.cs.png
new file mode 100644
index 00000000..b0813972
Binary files /dev/null and b/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.cs.png differ
diff --git a/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.hu.png b/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.hu.png
new file mode 100644
index 00000000..b0813972
Binary files /dev/null and b/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.hu.png differ
diff --git a/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.sw.png b/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.sw.png
new file mode 100644
index 00000000..b0813972
Binary files /dev/null and b/translated_images/banana-ripe-2.96ddc53114c5f020a328b264174eef43d2096620c6b10ff5189e99674c1dfa8c.sw.png differ
diff --git a/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.cs.png b/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.cs.png
new file mode 100644
index 00000000..4f2da8dc
Binary files /dev/null and b/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.cs.png differ
diff --git a/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.hu.png b/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.hu.png
new file mode 100644
index 00000000..4f2da8dc
Binary files /dev/null and b/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.hu.png differ
diff --git a/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.sw.png b/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.sw.png
new file mode 100644
index 00000000..4f2da8dc
Binary files /dev/null and b/translated_images/banana-ripe-20.a4d0ad33a7e6f037ac9276dc751ae62d56d3cc16e625837197ef49da426bc3c8.sw.png differ
diff --git a/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.cs.png b/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.cs.png
new file mode 100644
index 00000000..8ae3904c
Binary files /dev/null and b/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.cs.png differ
diff --git a/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.hu.png b/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.hu.png
new file mode 100644
index 00000000..8ae3904c
Binary files /dev/null and b/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.hu.png differ
diff --git a/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.sw.png b/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.sw.png
new file mode 100644
index 00000000..8ae3904c
Binary files /dev/null and b/translated_images/banana-ripe-21.07e03d64f265d55dfe3b304df3e36f06140b87f80ae2cadd22a7736e2855eb8f.sw.png differ
diff --git a/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.cs.png b/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.cs.png
new file mode 100644
index 00000000..ea5cbe30
Binary files /dev/null and b/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.cs.png differ
diff --git a/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.hu.png b/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.hu.png
new file mode 100644
index 00000000..ea5cbe30
Binary files /dev/null and b/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.hu.png differ
diff --git a/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.sw.png b/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.sw.png
new file mode 100644
index 00000000..ea5cbe30
Binary files /dev/null and b/translated_images/banana-ripe-22.a63c05aeb7f866fc64b6ac04e6fa68e1d1a22d729ad16d9fadf3357df97654a3.sw.png differ
diff --git a/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.cs.png b/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.cs.png
new file mode 100644
index 00000000..eab9fb03
Binary files /dev/null and b/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.cs.png differ
diff --git a/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.hu.png b/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.hu.png
new file mode 100644
index 00000000..eab9fb03
Binary files /dev/null and b/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.hu.png differ
diff --git a/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.sw.png b/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.sw.png
new file mode 100644
index 00000000..eab9fb03
Binary files /dev/null and b/translated_images/banana-ripe-23.6f3364afcab19e571497cb5a3fa2b0c603a303beb31034cb82ae25635f4cc005.sw.png differ
diff --git a/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.cs.png b/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.cs.png
new file mode 100644
index 00000000..c49c0459
Binary files /dev/null and b/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.cs.png differ
diff --git a/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.hu.png b/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.hu.png
new file mode 100644
index 00000000..c49c0459
Binary files /dev/null and b/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.hu.png differ
diff --git a/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.sw.png b/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.sw.png
new file mode 100644
index 00000000..c49c0459
Binary files /dev/null and b/translated_images/banana-ripe-24.ff2c02cc80a9c4301d1f851af0a96f414fcc844f912ea4bea902877c9d6978f6.sw.png differ
diff --git a/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.cs.png b/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.cs.png
new file mode 100644
index 00000000..127b0257
Binary files /dev/null and b/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.cs.png differ
diff --git a/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.hu.png b/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.hu.png
new file mode 100644
index 00000000..127b0257
Binary files /dev/null and b/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.hu.png differ
diff --git a/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.sw.png b/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.sw.png
new file mode 100644
index 00000000..127b0257
Binary files /dev/null and b/translated_images/banana-ripe-25.65ce63418cdc4de2d1d29d0fd35401a9f99e967938e01c3578f13a6b6812ae50.sw.png differ
diff --git a/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.cs.png b/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.cs.png
new file mode 100644
index 00000000..0b528799
Binary files /dev/null and b/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.cs.png differ
diff --git a/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.hu.png b/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.hu.png
new file mode 100644
index 00000000..0b528799
Binary files /dev/null and b/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.hu.png differ
diff --git a/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.sw.png b/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.sw.png
new file mode 100644
index 00000000..0b528799
Binary files /dev/null and b/translated_images/banana-ripe-3.4fae05a0a1d2b5f010998afee52fb77a113453a95331c76eb4b509c14d5cb5d7.sw.png differ
diff --git a/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.cs.png b/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.cs.png
new file mode 100644
index 00000000..e5b04c65
Binary files /dev/null and b/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.cs.png differ
diff --git a/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.hu.png b/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.hu.png
new file mode 100644
index 00000000..e5b04c65
Binary files /dev/null and b/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.hu.png differ
diff --git a/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.sw.png b/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.sw.png
new file mode 100644
index 00000000..e5b04c65
Binary files /dev/null and b/translated_images/banana-ripe-5.c762086879ccec4c5402fb5dd5387f4ee4c208de3ec13fd69a5461ef36cde34a.sw.png differ
diff --git a/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.cs.png b/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.cs.png
new file mode 100644
index 00000000..46543926
Binary files /dev/null and b/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.cs.png differ
diff --git a/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.hu.png b/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.hu.png
new file mode 100644
index 00000000..46543926
Binary files /dev/null and b/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.hu.png differ
diff --git a/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.sw.png b/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.sw.png
new file mode 100644
index 00000000..46543926
Binary files /dev/null and b/translated_images/banana-ripe-6.5131bcbf492980cb737c3658b96f6ff3381ced4cd6505588b05bd95d82965c49.sw.png differ
diff --git a/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.cs.png b/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.cs.png
new file mode 100644
index 00000000..46e99668
Binary files /dev/null and b/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.cs.png differ
diff --git a/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.hu.png b/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.hu.png
new file mode 100644
index 00000000..46e99668
Binary files /dev/null and b/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.hu.png differ
diff --git a/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.sw.png b/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.sw.png
new file mode 100644
index 00000000..46e99668
Binary files /dev/null and b/translated_images/banana-ripe-7.5fc18dfe7b7ae9dc5afe27cc6c0ce162c819b78b69b05f6f9c1636d5d1b82edc.sw.png differ
diff --git a/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.cs.png b/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.cs.png
new file mode 100644
index 00000000..c012d47d
Binary files /dev/null and b/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.cs.png differ
diff --git a/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.hu.png b/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.hu.png
new file mode 100644
index 00000000..c012d47d
Binary files /dev/null and b/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.hu.png differ
diff --git a/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.sw.png b/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.sw.png
new file mode 100644
index 00000000..c012d47d
Binary files /dev/null and b/translated_images/banana-ripe-8.dba1d33bd34d4830201c15a9c35c56fde4b1a45dc7dc5e3a7def9986bf1b6c28.sw.png differ
diff --git a/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.cs.png b/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.cs.png
new file mode 100644
index 00000000..fa44061a
Binary files /dev/null and b/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.cs.png differ
diff --git a/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.hu.png b/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.hu.png
new file mode 100644
index 00000000..fa44061a
Binary files /dev/null and b/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.hu.png differ
diff --git a/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.sw.png b/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.sw.png
new file mode 100644
index 00000000..fa44061a
Binary files /dev/null and b/translated_images/banana-ripe-9.32f91462c8b0e2d3666f49a12afd84462212c5834835f988b3c37441c0493952.sw.png differ
diff --git a/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.cs.png b/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.cs.png
new file mode 100644
index 00000000..e499b2fd
Binary files /dev/null and b/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.cs.png differ
diff --git a/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.hu.png b/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.hu.png
new file mode 100644
index 00000000..e499b2fd
Binary files /dev/null and b/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.hu.png differ
diff --git a/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.sw.png b/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.sw.png
new file mode 100644
index 00000000..e499b2fd
Binary files /dev/null and b/translated_images/banana-training-images.530eb203346d73bc23b8b990fb4609470bf4ff7c942ccc13d4cfffeed9be1ad4.sw.png differ
diff --git a/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.cs.png b/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.cs.png
new file mode 100644
index 00000000..66e9927a
Binary files /dev/null and b/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.cs.png differ
diff --git a/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.hu.png b/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.hu.png
new file mode 100644
index 00000000..66e9927a
Binary files /dev/null and b/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.hu.png differ
diff --git a/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.sw.png b/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.sw.png
new file mode 100644
index 00000000..66e9927a
Binary files /dev/null and b/translated_images/banana-unripe-1.910c8606a300fa2014a0e0adb31348effd6e0fdd5760fdfe80b8e69533bac6f7.sw.png differ
diff --git a/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.cs.png b/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.cs.png
new file mode 100644
index 00000000..e512cf63
Binary files /dev/null and b/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.cs.png differ
diff --git a/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.hu.png b/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.hu.png
new file mode 100644
index 00000000..e512cf63
Binary files /dev/null and b/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.hu.png differ
diff --git a/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.sw.png b/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.sw.png
new file mode 100644
index 00000000..e512cf63
Binary files /dev/null and b/translated_images/banana-unripe-1.b2c7051d9c8a4e617be0425bea42775d16f896f3a183344e9038da2d1fb81dea.sw.png differ
diff --git a/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.cs.png b/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.cs.png
new file mode 100644
index 00000000..89e41b8a
Binary files /dev/null and b/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.cs.png differ
diff --git a/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.hu.png b/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.hu.png
new file mode 100644
index 00000000..89e41b8a
Binary files /dev/null and b/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.hu.png differ
diff --git a/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.sw.png b/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.sw.png
new file mode 100644
index 00000000..89e41b8a
Binary files /dev/null and b/translated_images/banana-unripe-10.38dab0db918a24870e655b62e7f3af030eaebe5bcfb7cfebbfb010637b46ba44.sw.png differ
diff --git a/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.cs.png b/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.cs.png
new file mode 100644
index 00000000..257c3e55
Binary files /dev/null and b/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.cs.png differ
diff --git a/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.hu.png b/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.hu.png
new file mode 100644
index 00000000..257c3e55
Binary files /dev/null and b/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.hu.png differ
diff --git a/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.sw.png b/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.sw.png
new file mode 100644
index 00000000..257c3e55
Binary files /dev/null and b/translated_images/banana-unripe-11.ec8d0eefe63e10b953579d18d4fdd9d89cedc247749ec1d11fdbe49a43f1bc90.sw.png differ
diff --git a/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.cs.png b/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.cs.png
new file mode 100644
index 00000000..85a581ed
Binary files /dev/null and b/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.cs.png differ
diff --git a/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.hu.png b/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.hu.png
new file mode 100644
index 00000000..85a581ed
Binary files /dev/null and b/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.hu.png differ
diff --git a/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.sw.png b/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.sw.png
new file mode 100644
index 00000000..85a581ed
Binary files /dev/null and b/translated_images/banana-unripe-12.b95a088ccae935db01b47786dac829cb356feb5d4dbfcf8d91e000e9ed3be7a2.sw.png differ
diff --git a/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.cs.png b/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.cs.png
new file mode 100644
index 00000000..c07f67c3
Binary files /dev/null and b/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.cs.png differ
diff --git a/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.hu.png b/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.hu.png
new file mode 100644
index 00000000..c07f67c3
Binary files /dev/null and b/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.hu.png differ
diff --git a/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.sw.png b/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.sw.png
new file mode 100644
index 00000000..c07f67c3
Binary files /dev/null and b/translated_images/banana-unripe-13.37e5a7cac5aa0920343a6dd17dc720499d9f9b7c990cf4bc002f681216a545b7.sw.png differ
diff --git a/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.cs.png b/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.cs.png
new file mode 100644
index 00000000..c598913b
Binary files /dev/null and b/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.cs.png differ
diff --git a/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.hu.png b/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.hu.png
new file mode 100644
index 00000000..c598913b
Binary files /dev/null and b/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.hu.png differ
diff --git a/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.sw.png b/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.sw.png
new file mode 100644
index 00000000..c598913b
Binary files /dev/null and b/translated_images/banana-unripe-14.d19ddd6bbf63a2591db0d88a6c81e17d2186dee04b9bb4ff60031009fc0cce0a.sw.png differ
diff --git a/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.cs.png b/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.cs.png
new file mode 100644
index 00000000..a630a6f3
Binary files /dev/null and b/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.cs.png differ
diff --git a/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.hu.png b/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.hu.png
new file mode 100644
index 00000000..a630a6f3
Binary files /dev/null and b/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.hu.png differ
diff --git a/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.sw.png b/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.sw.png
new file mode 100644
index 00000000..a630a6f3
Binary files /dev/null and b/translated_images/banana-unripe-15.274e48544326077a58c0e00e04e98c7abe04bc473caaab64fe3154c551d8a0a8.sw.png differ
diff --git a/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.cs.png b/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.cs.png
new file mode 100644
index 00000000..f63ad48d
Binary files /dev/null and b/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.cs.png differ
diff --git a/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.hu.png b/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.hu.png
new file mode 100644
index 00000000..f63ad48d
Binary files /dev/null and b/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.hu.png differ
diff --git a/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.sw.png b/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.sw.png
new file mode 100644
index 00000000..f63ad48d
Binary files /dev/null and b/translated_images/banana-unripe-16.bd058f64bd7ec014d10bdeb9da39568aeb5871908b5c2a6376a5f97d3101c273.sw.png differ
diff --git a/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.cs.png b/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.cs.png
new file mode 100644
index 00000000..73c0aea6
Binary files /dev/null and b/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.cs.png differ
diff --git a/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.hu.png b/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.hu.png
new file mode 100644
index 00000000..73c0aea6
Binary files /dev/null and b/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.hu.png differ
diff --git a/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.sw.png b/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.sw.png
new file mode 100644
index 00000000..73c0aea6
Binary files /dev/null and b/translated_images/banana-unripe-17.408382d679bfa079fbe89e269fbc05a2602d2f980834601380633a5471c72396.sw.png differ
diff --git a/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.cs.png b/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.cs.png
new file mode 100644
index 00000000..0768efbc
Binary files /dev/null and b/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.cs.png differ
diff --git a/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.hu.png b/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.hu.png
new file mode 100644
index 00000000..0768efbc
Binary files /dev/null and b/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.hu.png differ
diff --git a/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.sw.png b/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.sw.png
new file mode 100644
index 00000000..0768efbc
Binary files /dev/null and b/translated_images/banana-unripe-18.39c0eb79d7b3b9baf71858801fb8cb8b01e395289bab8c7091a57a97d1dfa075.sw.png differ
diff --git a/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.cs.png b/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.cs.png
new file mode 100644
index 00000000..a6c3afe8
Binary files /dev/null and b/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.cs.png differ
diff --git a/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.hu.png b/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.hu.png
new file mode 100644
index 00000000..a6c3afe8
Binary files /dev/null and b/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.hu.png differ
diff --git a/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.sw.png b/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.sw.png
new file mode 100644
index 00000000..a6c3afe8
Binary files /dev/null and b/translated_images/banana-unripe-19.e61e6d7efaf2d8c81a25acbff9c40f018b78c3c240c8e384d54da374eda70f9b.sw.png differ
diff --git a/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.cs.png b/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.cs.png
new file mode 100644
index 00000000..eed10ecb
Binary files /dev/null and b/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.cs.png differ
diff --git a/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.hu.png b/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.hu.png
new file mode 100644
index 00000000..eed10ecb
Binary files /dev/null and b/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.hu.png differ
diff --git a/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.sw.png b/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.sw.png
new file mode 100644
index 00000000..eed10ecb
Binary files /dev/null and b/translated_images/banana-unripe-2.43a73b544521afc7efd54de90fd585f314844de67b16509fff2ab80c05eec7bd.sw.png differ
diff --git a/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.cs.png b/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.cs.png
new file mode 100644
index 00000000..4c086050
Binary files /dev/null and b/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.cs.png differ
diff --git a/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.hu.png b/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.hu.png
new file mode 100644
index 00000000..4c086050
Binary files /dev/null and b/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.hu.png differ
diff --git a/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.sw.png b/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.sw.png
new file mode 100644
index 00000000..4c086050
Binary files /dev/null and b/translated_images/banana-unripe-2.9591d1a6aa27deebbaec0955b227bbae20d6bfae43f29d832bd412bbafa45bfd.sw.png differ
diff --git a/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.cs.png b/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.cs.png
new file mode 100644
index 00000000..9f641588
Binary files /dev/null and b/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.cs.png differ
diff --git a/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.hu.png b/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.hu.png
new file mode 100644
index 00000000..9f641588
Binary files /dev/null and b/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.hu.png differ
diff --git a/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.sw.png b/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.sw.png
new file mode 100644
index 00000000..9f641588
Binary files /dev/null and b/translated_images/banana-unripe-20.85b7a74eaab5634e769fe2fec57405201513094c400f71e16d75cd79bde092ab.sw.png differ
diff --git a/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.cs.png b/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.cs.png
new file mode 100644
index 00000000..9404843f
Binary files /dev/null and b/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.cs.png differ
diff --git a/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.hu.png b/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.hu.png
new file mode 100644
index 00000000..9404843f
Binary files /dev/null and b/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.hu.png differ
diff --git a/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.sw.png b/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.sw.png
new file mode 100644
index 00000000..9404843f
Binary files /dev/null and b/translated_images/banana-unripe-21.ccc1333439b344bc502fbfa9b60e5e9013a4d57ba539ba87000ccd69dc0675e2.sw.png differ
diff --git a/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.cs.png b/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.cs.png
new file mode 100644
index 00000000..9636ac68
Binary files /dev/null and b/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.cs.png differ
diff --git a/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.hu.png b/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.hu.png
new file mode 100644
index 00000000..9636ac68
Binary files /dev/null and b/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.hu.png differ
diff --git a/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.sw.png b/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.sw.png
new file mode 100644
index 00000000..9636ac68
Binary files /dev/null and b/translated_images/banana-unripe-22.27dff4b438163080fcace0af6f24b8c9866b76a15269844e9ed1b722ae2220e7.sw.png differ
diff --git a/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.cs.png b/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.cs.png
new file mode 100644
index 00000000..38a2b35d
Binary files /dev/null and b/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.cs.png differ
diff --git a/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.hu.png b/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.hu.png
new file mode 100644
index 00000000..38a2b35d
Binary files /dev/null and b/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.hu.png differ
diff --git a/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.sw.png b/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.sw.png
new file mode 100644
index 00000000..38a2b35d
Binary files /dev/null and b/translated_images/banana-unripe-23.c4c9067f23370e90c5156d7659a0d17590d952e2defd6550aeded84e847c1e4b.sw.png differ
diff --git a/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.cs.png b/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.cs.png
new file mode 100644
index 00000000..cd09e177
Binary files /dev/null and b/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.cs.png differ
diff --git a/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.hu.png b/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.hu.png
new file mode 100644
index 00000000..cd09e177
Binary files /dev/null and b/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.hu.png differ
diff --git a/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.sw.png b/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.sw.png
new file mode 100644
index 00000000..cd09e177
Binary files /dev/null and b/translated_images/banana-unripe-24.6f0b781c309da62f71147fcc87699967bef10c57a794029ede2eb0d1d88e4b73.sw.png differ
diff --git a/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.cs.png b/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.cs.png
new file mode 100644
index 00000000..4cc4f4bc
Binary files /dev/null and b/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.cs.png differ
diff --git a/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.hu.png b/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.hu.png
new file mode 100644
index 00000000..4cc4f4bc
Binary files /dev/null and b/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.hu.png differ
diff --git a/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.sw.png b/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.sw.png
new file mode 100644
index 00000000..4cc4f4bc
Binary files /dev/null and b/translated_images/banana-unripe-25.21d553d84880ac4ff73128909d01c79c4544424d218f740482da46bdae46f74b.sw.png differ
diff --git a/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.cs.png b/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.cs.png
new file mode 100644
index 00000000..33e03220
Binary files /dev/null and b/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.cs.png differ
diff --git a/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.hu.png b/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.hu.png
new file mode 100644
index 00000000..33e03220
Binary files /dev/null and b/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.hu.png differ
diff --git a/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.sw.png b/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.sw.png
new file mode 100644
index 00000000..33e03220
Binary files /dev/null and b/translated_images/banana-unripe-26.823c48b61feb1d5c319e9cf54f5e7c2bb43f91e781bf42d57f386d0dabf3fd12.sw.png differ
diff --git a/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.cs.png b/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.cs.png
new file mode 100644
index 00000000..489d49e3
Binary files /dev/null and b/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.cs.png differ
diff --git a/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.hu.png b/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.hu.png
new file mode 100644
index 00000000..489d49e3
Binary files /dev/null and b/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.hu.png differ
diff --git a/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.sw.png b/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.sw.png
new file mode 100644
index 00000000..489d49e3
Binary files /dev/null and b/translated_images/banana-unripe-27.f98fd272deeb02d9b6771340fe6da2de82db652ade770d9eca14ba6be2d0ad17.sw.png differ
diff --git a/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.cs.png b/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.cs.png
new file mode 100644
index 00000000..80b39b63
Binary files /dev/null and b/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.cs.png differ
diff --git a/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.hu.png b/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.hu.png
new file mode 100644
index 00000000..80b39b63
Binary files /dev/null and b/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.hu.png differ
diff --git a/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.sw.png b/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.sw.png
new file mode 100644
index 00000000..80b39b63
Binary files /dev/null and b/translated_images/banana-unripe-28.5331ba409ce41c07caa09d72d6ad7375b5a5b3d7609fcabdaa82d9799439fd21.sw.png differ
diff --git a/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.cs.png b/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.cs.png
new file mode 100644
index 00000000..2404a4ce
Binary files /dev/null and b/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.cs.png differ
diff --git a/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.hu.png b/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.hu.png
new file mode 100644
index 00000000..2404a4ce
Binary files /dev/null and b/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.hu.png differ
diff --git a/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.sw.png b/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.sw.png
new file mode 100644
index 00000000..2404a4ce
Binary files /dev/null and b/translated_images/banana-unripe-29.84e126f389bf627ed464abdf8127f3a58e8b0131b5b1b9ee038de51703c31657.sw.png differ
diff --git a/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.cs.png b/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.cs.png
new file mode 100644
index 00000000..f884cc81
Binary files /dev/null and b/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.cs.png differ
diff --git a/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.hu.png b/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.hu.png
new file mode 100644
index 00000000..f884cc81
Binary files /dev/null and b/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.hu.png differ
diff --git a/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.sw.png b/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.sw.png
new file mode 100644
index 00000000..f884cc81
Binary files /dev/null and b/translated_images/banana-unripe-3.896df8fb2c3b8f51f71b212645fc5314b591a033938208000839642858ddcabd.sw.png differ
diff --git a/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.cs.png b/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.cs.png
new file mode 100644
index 00000000..9f649bd1
Binary files /dev/null and b/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.cs.png differ
diff --git a/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.hu.png b/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.hu.png
new file mode 100644
index 00000000..9f649bd1
Binary files /dev/null and b/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.hu.png differ
diff --git a/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.sw.png b/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.sw.png
new file mode 100644
index 00000000..9f649bd1
Binary files /dev/null and b/translated_images/banana-unripe-4.483e740d6fd7b5a671cb49ad1b0f2c35f1637f86ccb9746bb4cc3b59ab752bf7.sw.png differ
diff --git a/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.cs.png b/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.cs.png
new file mode 100644
index 00000000..03e1fa8c
Binary files /dev/null and b/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.cs.png differ
diff --git a/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.hu.png b/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.hu.png
new file mode 100644
index 00000000..03e1fa8c
Binary files /dev/null and b/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.hu.png differ
diff --git a/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.sw.png b/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.sw.png
new file mode 100644
index 00000000..03e1fa8c
Binary files /dev/null and b/translated_images/banana-unripe-5.e9923cf1ffcfc1c93e8c2aeb184bd071566742b738b671ab9cedcd5708239a58.sw.png differ
diff --git a/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.cs.png b/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.cs.png
new file mode 100644
index 00000000..983f836f
Binary files /dev/null and b/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.cs.png differ
diff --git a/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.hu.png b/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.hu.png
new file mode 100644
index 00000000..983f836f
Binary files /dev/null and b/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.hu.png differ
diff --git a/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.sw.png b/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.sw.png
new file mode 100644
index 00000000..983f836f
Binary files /dev/null and b/translated_images/banana-unripe-6.e3a73307558caecc9aac5ae80bbe37ca38f105e2bd7311afab61ee1014fc6c0e.sw.png differ
diff --git a/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.cs.png b/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.cs.png
new file mode 100644
index 00000000..2aede939
Binary files /dev/null and b/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.cs.png differ
diff --git a/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.hu.png b/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.hu.png
new file mode 100644
index 00000000..2aede939
Binary files /dev/null and b/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.hu.png differ
diff --git a/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.sw.png b/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.sw.png
new file mode 100644
index 00000000..2aede939
Binary files /dev/null and b/translated_images/banana-unripe-7.634ca89acc17d68f8423b1a13f1bec6bdbd5135f0149c6cfaa53d7b7d5fa1c65.sw.png differ
diff --git a/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.cs.png b/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.cs.png
new file mode 100644
index 00000000..7bc7bab2
Binary files /dev/null and b/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.cs.png differ
diff --git a/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.hu.png b/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.hu.png
new file mode 100644
index 00000000..7bc7bab2
Binary files /dev/null and b/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.hu.png differ
diff --git a/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.sw.png b/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.sw.png
new file mode 100644
index 00000000..7bc7bab2
Binary files /dev/null and b/translated_images/banana-unripe-8.75720b4cdebac8c36964c86e051ea962ab02e530abec3f577bd77fdbc34d7f9d.sw.png differ
diff --git a/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.cs.png b/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.cs.png
new file mode 100644
index 00000000..4ffd862a
Binary files /dev/null and b/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.cs.png differ
diff --git a/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.hu.png b/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.hu.png
new file mode 100644
index 00000000..4ffd862a
Binary files /dev/null and b/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.hu.png differ
diff --git a/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.sw.png b/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.sw.png
new file mode 100644
index 00000000..4ffd862a
Binary files /dev/null and b/translated_images/banana-unripe-9.e8076983351d2f54cfb246bc01090e7016b63fb8d81396822cbe5366c1b88b7f.sw.png differ
diff --git a/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.cs.png b/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.cs.png
new file mode 100644
index 00000000..ef506579
Binary files /dev/null and b/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.cs.png differ
diff --git a/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.hu.png b/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.hu.png
new file mode 100644
index 00000000..ef506579
Binary files /dev/null and b/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.hu.png differ
diff --git a/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.sw.png b/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.sw.png
new file mode 100644
index 00000000..ef506579
Binary files /dev/null and b/translated_images/banana-unripe-quick-test-prediction.dae9b5e1c4ef7c64886422438850ea14f0be6ac918c217ea3b255c685abfabe7.sw.png differ
diff --git a/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.cs.png b/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.cs.png
new file mode 100644
index 00000000..ddf79213
Binary files /dev/null and b/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.cs.png differ
diff --git a/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.hu.png b/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.hu.png
new file mode 100644
index 00000000..ddf79213
Binary files /dev/null and b/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.hu.png differ
diff --git a/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.sw.png b/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.sw.png
new file mode 100644
index 00000000..ddf79213
Binary files /dev/null and b/translated_images/bananas-ripe-vs-unripe-predictions.8d0e2034014aa50ece4e4589e724b142da0681f35470fe3db3f7d51240f69c85.sw.png differ
diff --git a/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.cs.png b/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.cs.png
new file mode 100644
index 00000000..1796bcce
Binary files /dev/null and b/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.cs.png differ
diff --git a/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.hu.png b/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.hu.png
new file mode 100644
index 00000000..1796bcce
Binary files /dev/null and b/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.hu.png differ
diff --git a/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.sw.png b/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.sw.png
new file mode 100644
index 00000000..1796bcce
Binary files /dev/null and b/translated_images/basic-thermostat.a923217fd1f37e5a6f3390396a65c22a387419ea2dd17e518ec24315ba6ae9a8.sw.png differ
diff --git a/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.cs.png b/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.cs.png
new file mode 100644
index 00000000..ab763666
Binary files /dev/null and b/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.cs.png differ
diff --git a/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.hu.png b/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.hu.png
new file mode 100644
index 00000000..ab763666
Binary files /dev/null and b/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.hu.png differ
diff --git a/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.sw.png b/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.sw.png
new file mode 100644
index 00000000..ab763666
Binary files /dev/null and b/translated_images/bing-translate.348aa796d6efe2a92f41ea74a5cf42bb4c63d6faaa08e7f46924e072a35daa48.sw.png differ
diff --git a/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.cs.png b/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.cs.png
new file mode 100644
index 00000000..013f247d
Binary files /dev/null and b/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.cs.png differ
diff --git a/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.hu.png b/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.hu.png
new file mode 100644
index 00000000..013f247d
Binary files /dev/null and b/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.hu.png differ
diff --git a/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.sw.png b/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.sw.png
new file mode 100644
index 00000000..013f247d
Binary files /dev/null and b/translated_images/bounding-box.1420a7ea0d3d15f71e1ffb5cf4b2271d184fac051f990abc541975168d163684.sw.png differ
diff --git a/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.cs.png b/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.cs.png
new file mode 100644
index 00000000..fd1b7753
Binary files /dev/null and b/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.cs.png differ
diff --git a/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.hu.png b/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.hu.png
new file mode 100644
index 00000000..fd1b7753
Binary files /dev/null and b/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.hu.png differ
diff --git a/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.sw.png b/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.sw.png
new file mode 100644
index 00000000..fd1b7753
Binary files /dev/null and b/translated_images/bricked-car.dc38f8efadc6c59d76211f981a521efb300939283dee468f79503aae3ec67615.sw.png differ
diff --git a/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.cs.png b/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.cs.png
new file mode 100644
index 00000000..55154b84
Binary files /dev/null and b/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.cs.png differ
diff --git a/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.hu.png b/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.hu.png
new file mode 100644
index 00000000..55154b84
Binary files /dev/null and b/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.hu.png differ
diff --git a/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.sw.png b/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.sw.png
new file mode 100644
index 00000000..55154b84
Binary files /dev/null and b/translated_images/button-with-digital.3749edea8eb885af0303f7ea29e2389d704661c0ca3225b08ff0cbc22f332059.sw.png differ
diff --git a/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.cs.png b/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.cs.png
new file mode 100644
index 00000000..306d6f14
Binary files /dev/null and b/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.cs.png differ
diff --git a/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.hu.png b/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.hu.png
new file mode 100644
index 00000000..306d6f14
Binary files /dev/null and b/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.hu.png differ
diff --git a/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.sw.png b/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.sw.png
new file mode 100644
index 00000000..306d6f14
Binary files /dev/null and b/translated_images/button.eadb560b77ac45e56f523d9d8876e40444f63b419e33eb820082d461fa79490b.sw.png differ
diff --git a/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.cs.png b/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.cs.png
new file mode 100644
index 00000000..dfb03646
Binary files /dev/null and b/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.cs.png differ
diff --git a/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.hu.png b/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.hu.png
new file mode 100644
index 00000000..dfb03646
Binary files /dev/null and b/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.hu.png differ
diff --git a/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.sw.png b/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.sw.png
new file mode 100644
index 00000000..dfb03646
Binary files /dev/null and b/translated_images/chart-soil-moisture-relay.fbb391236d34a64d0abf1df396e9197e0a24df14150620b9cc820a64a55c9326.sw.png differ
diff --git a/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.cs.png b/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.cs.png
new file mode 100644
index 00000000..05208120
Binary files /dev/null and b/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.cs.png differ
diff --git a/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.hu.png b/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.hu.png
new file mode 100644
index 00000000..05208120
Binary files /dev/null and b/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.hu.png differ
diff --git a/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.sw.png b/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.sw.png
new file mode 100644
index 00000000..05208120
Binary files /dev/null and b/translated_images/chart-soil-moisture.fd6d9d0cdc0b5f75e78038ecb8945dfc84b38851359de99d84b16e3336d6d7c2.sw.png differ
diff --git a/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.cs.jpg b/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.cs.jpg
new file mode 100644
index 00000000..e78b8c6c
Binary files /dev/null and b/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.cs.jpg differ
diff --git a/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.hu.jpg b/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.hu.jpg
new file mode 100644
index 00000000..e78b8c6c
Binary files /dev/null and b/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.hu.jpg differ
diff --git a/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.sw.jpg b/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.sw.jpg
new file mode 100644
index 00000000..e78b8c6c
Binary files /dev/null and b/translated_images/child-watering-garden.9a5d3f1bfe6d0d8d488291e8189899b2c59f82abaa487f18d404217a25e671e7.sw.jpg differ
diff --git a/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.cs.png b/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.cs.png
new file mode 100644
index 00000000..0b221a3f
Binary files /dev/null and b/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.cs.png differ
diff --git a/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.hu.png b/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.hu.png
new file mode 100644
index 00000000..0b221a3f
Binary files /dev/null and b/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.hu.png differ
diff --git a/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.sw.png b/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.sw.png
new file mode 100644
index 00000000..0b221a3f
Binary files /dev/null and b/translated_images/cloud-with-edge.1e26462c62c126fe150bd15a5714ddf0be599f09bacbad08b85be02b76ea1ae1.sw.png differ
diff --git a/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.cs.png b/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.cs.png
new file mode 100644
index 00000000..576d3f84
Binary files /dev/null and b/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.cs.png differ
diff --git a/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.hu.png b/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.hu.png
new file mode 100644
index 00000000..576d3f84
Binary files /dev/null and b/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.hu.png differ
diff --git a/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.sw.png b/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.sw.png
new file mode 100644
index 00000000..576d3f84
Binary files /dev/null and b/translated_images/cloud-without-edge.b4da641f6022c95ed6b91fde8b5323abd2f94e0d52073ad54172ae8f5dac90e9.sw.png differ
diff --git a/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.cs.png b/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.cs.png
new file mode 100644
index 00000000..297ccc5e
Binary files /dev/null and b/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.cs.png differ
diff --git a/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.hu.png b/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.hu.png
new file mode 100644
index 00000000..297ccc5e
Binary files /dev/null and b/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.hu.png differ
diff --git a/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.sw.png b/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.sw.png
new file mode 100644
index 00000000..297ccc5e
Binary files /dev/null and b/translated_images/cmos-sensor.75f9cd74decb137149a4c9ea825251a4549497d67c0ae2776159e6102bb53aa9.sw.png differ
diff --git a/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.cs.png b/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.cs.png
new file mode 100644
index 00000000..89bd1ba6
Binary files /dev/null and b/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.cs.png differ
diff --git a/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.hu.png b/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.hu.png
new file mode 100644
index 00000000..89bd1ba6
Binary files /dev/null and b/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.hu.png differ
diff --git a/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.sw.png b/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.sw.png
new file mode 100644
index 00000000..89bd1ba6
Binary files /dev/null and b/translated_images/commands.d6c06bbbb3a02cce95f2831a1c331daf6dedd4e470c4aa2b0ae54f332016e504.sw.png differ
diff --git a/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.cs.jpg b/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.cs.jpg
new file mode 100644
index 00000000..383794f2
Binary files /dev/null and b/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.cs.jpg differ
diff --git a/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.hu.jpg b/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.hu.jpg
new file mode 100644
index 00000000..383794f2
Binary files /dev/null and b/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.hu.jpg differ
diff --git a/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.sw.jpg b/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.sw.jpg
new file mode 100644
index 00000000..383794f2
Binary files /dev/null and b/translated_images/condenser-mic.6f6ed5b76ca19e0ec3fd0c544601542d4479a6cb7565db336de49fbbf69f623e.sw.jpg differ
diff --git a/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.cs.png b/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.cs.png
new file mode 100644
index 00000000..f28538e1
Binary files /dev/null and b/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.cs.png differ
diff --git a/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.hu.png b/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.hu.png
new file mode 100644
index 00000000..f28538e1
Binary files /dev/null and b/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.hu.png differ
diff --git a/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.sw.png b/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.sw.png
new file mode 100644
index 00000000..f28538e1
Binary files /dev/null and b/translated_images/consumer-groups.a3262e26fc27ba2092863678ad57af15c7223416e388a23f330c058cf4358630.sw.png differ
diff --git a/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.cs.png b/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.cs.png
new file mode 100644
index 00000000..39431760
Binary files /dev/null and b/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.cs.png differ
diff --git a/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.hu.png b/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.hu.png
new file mode 100644
index 00000000..39431760
Binary files /dev/null and b/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.hu.png differ
diff --git a/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.sw.png b/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.sw.png
new file mode 100644
index 00000000..39431760
Binary files /dev/null and b/translated_images/container-edge-flow.c246050dd60ceefdb6ace026a4ce5c6aa4112bb5898ae23fbb2ab4be29ae3e1b.sw.png differ
diff --git a/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.cs.png b/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.cs.png
new file mode 100644
index 00000000..46a26d45
Binary files /dev/null and b/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.cs.png differ
diff --git a/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.hu.png b/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.hu.png
new file mode 100644
index 00000000..46a26d45
Binary files /dev/null and b/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.hu.png differ
diff --git a/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.sw.png b/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.sw.png
new file mode 100644
index 00000000..46a26d45
Binary files /dev/null and b/translated_images/container-web-browser.4ee81dd4f0d8838ce622b2a0d600b6a4322b5d4fe43159facd87b7b34f84d66a.sw.png differ
diff --git a/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.cs.png b/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.cs.png
new file mode 100644
index 00000000..6f70239b
Binary files /dev/null and b/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.cs.png differ
diff --git a/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.hu.png b/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.hu.png
new file mode 100644
index 00000000..6f70239b
Binary files /dev/null and b/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.hu.png differ
diff --git a/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.sw.png b/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.sw.png
new file mode 100644
index 00000000..6f70239b
Binary files /dev/null and b/translated_images/counterfit-camera-options.eb3bd5150a8e7dffbf24bc5bcaba0cf2cdef95fbe6bbe393695d173817d6b8df.sw.png differ
diff --git a/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.cs.png b/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.cs.png
new file mode 100644
index 00000000..c5cd51da
Binary files /dev/null and b/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.cs.png differ
diff --git a/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.hu.png b/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.hu.png
new file mode 100644
index 00000000..c5cd51da
Binary files /dev/null and b/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.hu.png differ
diff --git a/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.sw.png b/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.sw.png
new file mode 100644
index 00000000..c5cd51da
Binary files /dev/null and b/translated_images/counterfit-camera.001ec52194c8ee5d3f617173da2c79e1df903d10882adc625cbfc493525125d4.sw.png differ
diff --git a/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.cs.png b/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.cs.png
new file mode 100644
index 00000000..0328b3ea
Binary files /dev/null and b/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.cs.png differ
diff --git a/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.hu.png b/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.hu.png
new file mode 100644
index 00000000..0328b3ea
Binary files /dev/null and b/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.hu.png differ
diff --git a/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.sw.png b/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.sw.png
new file mode 100644
index 00000000..0328b3ea
Binary files /dev/null and b/translated_images/counterfit-connected.ed30b46d8f79b0921f3fc70be10366e596a89dca3f80c2224a9d9fc98fccf884.sw.png differ
diff --git a/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.cs.png b/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.cs.png
new file mode 100644
index 00000000..b3d0d223
Binary files /dev/null and b/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.cs.png differ
diff --git a/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.hu.png b/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.hu.png
new file mode 100644
index 00000000..b3d0d223
Binary files /dev/null and b/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.hu.png differ
diff --git a/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.sw.png b/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.sw.png
new file mode 100644
index 00000000..b3d0d223
Binary files /dev/null and b/translated_images/counterfit-create-camera.a5de97f59c0bd3cbe0416d7e89a3cfe86d19fbae05c641c53a91286412af0a34.sw.png differ
diff --git a/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.cs.png b/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.cs.png
new file mode 100644
index 00000000..0729dbce
Binary files /dev/null and b/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.cs.png differ
diff --git a/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.hu.png b/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.hu.png
new file mode 100644
index 00000000..0729dbce
Binary files /dev/null and b/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.hu.png differ
diff --git a/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.sw.png b/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.sw.png
new file mode 100644
index 00000000..0729dbce
Binary files /dev/null and b/translated_images/counterfit-create-distance-sensor.967c9fb98f27888d95920c9784d004c972490eb71f70397fe13bd70a79a879a3.sw.png differ
diff --git a/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.cs.png b/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.cs.png
new file mode 100644
index 00000000..2e3adef5
Binary files /dev/null and b/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.cs.png differ
diff --git a/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.hu.png b/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.hu.png
new file mode 100644
index 00000000..2e3adef5
Binary files /dev/null and b/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.hu.png differ
diff --git a/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.sw.png b/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.sw.png
new file mode 100644
index 00000000..2e3adef5
Binary files /dev/null and b/translated_images/counterfit-create-gps-sensor.6385dc9357d85ad1d47b4abb2525e7651fd498917d25eefc5a72feab09eedc70.sw.png differ
diff --git a/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.cs.png b/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.cs.png
new file mode 100644
index 00000000..4e9aa9b4
Binary files /dev/null and b/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.cs.png differ
diff --git a/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.hu.png b/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.hu.png
new file mode 100644
index 00000000..4e9aa9b4
Binary files /dev/null and b/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.hu.png differ
diff --git a/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.sw.png b/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.sw.png
new file mode 100644
index 00000000..4e9aa9b4
Binary files /dev/null and b/translated_images/counterfit-create-humidity-sensor.2750e27b6f30e09cf4e22101defd5252710717620816ab41ba688f91f757c49a.sw.png differ
diff --git a/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.cs.png b/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.cs.png
new file mode 100644
index 00000000..766527c0
Binary files /dev/null and b/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.cs.png differ
diff --git a/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.hu.png b/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.hu.png
new file mode 100644
index 00000000..766527c0
Binary files /dev/null and b/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.hu.png differ
diff --git a/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.sw.png b/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.sw.png
new file mode 100644
index 00000000..766527c0
Binary files /dev/null and b/translated_images/counterfit-create-led.ba9db1c9b8c622a635d6dfae5cdc4e70c2b250635bd4f0601c6cf0bd22b7ba46.sw.png differ
diff --git a/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.cs.png b/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.cs.png
new file mode 100644
index 00000000..f34ad7c6
Binary files /dev/null and b/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.cs.png differ
diff --git a/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.hu.png b/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.hu.png
new file mode 100644
index 00000000..f34ad7c6
Binary files /dev/null and b/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.hu.png differ
diff --git a/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.sw.png b/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.sw.png
new file mode 100644
index 00000000..f34ad7c6
Binary files /dev/null and b/translated_images/counterfit-create-light-sensor.9f36a5e0d4458d8d554d54b34d2c806d56093d6e49fddcda2d20f6fef7f5cce1.sw.png differ
diff --git a/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.cs.png b/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.cs.png
new file mode 100644
index 00000000..403bb436
Binary files /dev/null and b/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.cs.png differ
diff --git a/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.hu.png b/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.hu.png
new file mode 100644
index 00000000..403bb436
Binary files /dev/null and b/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.hu.png differ
diff --git a/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.sw.png b/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.sw.png
new file mode 100644
index 00000000..403bb436
Binary files /dev/null and b/translated_images/counterfit-create-relay.fa7c40fd0f2f6afc33b35ea94fcb235085be4861e14e3fe6b9b7bcfc82d1c888.sw.png differ
diff --git a/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.cs.png b/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.cs.png
new file mode 100644
index 00000000..07398a97
Binary files /dev/null and b/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.cs.png differ
diff --git a/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.hu.png b/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.hu.png
new file mode 100644
index 00000000..07398a97
Binary files /dev/null and b/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.hu.png differ
diff --git a/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.sw.png b/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.sw.png
new file mode 100644
index 00000000..07398a97
Binary files /dev/null and b/translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.sw.png differ
diff --git a/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.cs.png b/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.cs.png
new file mode 100644
index 00000000..83d0a29e
Binary files /dev/null and b/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.cs.png differ
diff --git a/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.hu.png b/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.hu.png
new file mode 100644
index 00000000..83d0a29e
Binary files /dev/null and b/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.hu.png differ
diff --git a/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.sw.png b/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.sw.png
new file mode 100644
index 00000000..83d0a29e
Binary files /dev/null and b/translated_images/counterfit-create-temperature-sensor.199350ed34f7343d79dccbe95eaf6c11d2121f03d1c35ab9613b330c23f39b29.sw.png differ
diff --git a/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.cs.png b/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.cs.png
new file mode 100644
index 00000000..cdd566f5
Binary files /dev/null and b/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.cs.png differ
diff --git a/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.hu.png b/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.hu.png
new file mode 100644
index 00000000..cdd566f5
Binary files /dev/null and b/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.hu.png differ
diff --git a/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.sw.png b/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.sw.png
new file mode 100644
index 00000000..cdd566f5
Binary files /dev/null and b/translated_images/counterfit-distance-sensor.079eefeeea0b68afc36431ce8fcbe2f09a7e4916ed1cd5cb30e696db53bc18fa.sw.png differ
diff --git a/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.cs.png b/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.cs.png
new file mode 100644
index 00000000..50caa7a8
Binary files /dev/null and b/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.cs.png differ
diff --git a/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.hu.png b/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.hu.png
new file mode 100644
index 00000000..50caa7a8
Binary files /dev/null and b/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.hu.png differ
diff --git a/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.sw.png b/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.sw.png
new file mode 100644
index 00000000..50caa7a8
Binary files /dev/null and b/translated_images/counterfit-first-run.433326358b669b31d0e99c3513cb01bfbb13724d162c99cdcc8f51ecf5f9c779.sw.png differ
diff --git a/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.cs.png b/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.cs.png
new file mode 100644
index 00000000..e68c1881
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.cs.png differ
diff --git a/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.hu.png b/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.hu.png
new file mode 100644
index 00000000..e68c1881
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.hu.png differ
diff --git a/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.sw.png b/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.sw.png
new file mode 100644
index 00000000..e68c1881
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-gpxfile.8310b063ce8a425ccc8ebeec8306aeac5e8e55207f007d52c6e1194432a70cd9.sw.png differ
diff --git a/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.cs.png b/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.cs.png
new file mode 100644
index 00000000..357708db
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.cs.png differ
diff --git a/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.hu.png b/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.hu.png
new file mode 100644
index 00000000..357708db
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.hu.png differ
diff --git a/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.sw.png b/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.sw.png
new file mode 100644
index 00000000..357708db
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-latlon.008c867d75464fbe7f84107cc57040df565ac07cb57d2f21db37d087d470197d.sw.png differ
diff --git a/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.cs.png b/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.cs.png
new file mode 100644
index 00000000..ff2cb168
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.cs.png differ
diff --git a/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.hu.png b/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.hu.png
new file mode 100644
index 00000000..ff2cb168
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.hu.png differ
diff --git a/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.sw.png b/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.sw.png
new file mode 100644
index 00000000..ff2cb168
Binary files /dev/null and b/translated_images/counterfit-gps-sensor-nmea.c62eea442171e17e19528b051b104cfcecdc9cd18db7bc72920f29821ae63f73.sw.png differ
diff --git a/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.cs.png b/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.cs.png
new file mode 100644
index 00000000..4dd28830
Binary files /dev/null and b/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.cs.png differ
diff --git a/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.hu.png b/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.hu.png
new file mode 100644
index 00000000..4dd28830
Binary files /dev/null and b/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.hu.png differ
diff --git a/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.sw.png b/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.sw.png
new file mode 100644
index 00000000..4dd28830
Binary files /dev/null and b/translated_images/counterfit-gps-sensor.3fbb15af0a5367566f2f11324ef5a6f30861cdf2b497071a5e002b7aa473550e.sw.png differ
diff --git a/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.cs.png b/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.cs.png
new file mode 100644
index 00000000..36a0bed7
Binary files /dev/null and b/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.cs.png differ
diff --git a/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.hu.png b/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.hu.png
new file mode 100644
index 00000000..36a0bed7
Binary files /dev/null and b/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.hu.png differ
diff --git a/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.sw.png b/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.sw.png
new file mode 100644
index 00000000..36a0bed7
Binary files /dev/null and b/translated_images/counterfit-humidity-sensor.7b12f7f339e430cb26c8211d2dba4ef75261b353a01da0932698b5bebd693f27.sw.png differ
diff --git a/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.cs.png b/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.cs.png
new file mode 100644
index 00000000..43b82415
Binary files /dev/null and b/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.cs.png differ
diff --git a/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.hu.png b/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.hu.png
new file mode 100644
index 00000000..43b82415
Binary files /dev/null and b/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.hu.png differ
diff --git a/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.sw.png b/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.sw.png
new file mode 100644
index 00000000..43b82415
Binary files /dev/null and b/translated_images/counterfit-led.c0ab02de6d256ad84d9bad4d67a7faa709f0ea83e410cfe9b5561ef0cef30b1c.sw.png differ
diff --git a/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.cs.png b/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.cs.png
new file mode 100644
index 00000000..9f42e92d
Binary files /dev/null and b/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.cs.png differ
diff --git a/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.hu.png b/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.hu.png
new file mode 100644
index 00000000..9f42e92d
Binary files /dev/null and b/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.hu.png differ
diff --git a/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.sw.png b/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.sw.png
new file mode 100644
index 00000000..9f42e92d
Binary files /dev/null and b/translated_images/counterfit-light-sensor.5d0f5584df56b90f6b2561910d9cb20dfbd73eeff2177c238d38f4de54aefae1.sw.png differ
diff --git a/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.cs.png b/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.cs.png
new file mode 100644
index 00000000..91118b35
Binary files /dev/null and b/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.cs.png differ
diff --git a/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.hu.png b/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.hu.png
new file mode 100644
index 00000000..91118b35
Binary files /dev/null and b/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.hu.png differ
diff --git a/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.sw.png b/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.sw.png
new file mode 100644
index 00000000..91118b35
Binary files /dev/null and b/translated_images/counterfit-relay.bbf74c1dbdc8b9acd983367fcbd06703a402aefef6af54ddb28e11307ba8a12c.sw.png differ
diff --git a/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.cs.png b/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.cs.png
new file mode 100644
index 00000000..c1074a8e
Binary files /dev/null and b/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.cs.png differ
diff --git a/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.hu.png b/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.hu.png
new file mode 100644
index 00000000..c1074a8e
Binary files /dev/null and b/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.hu.png differ
diff --git a/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.sw.png b/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.sw.png
new file mode 100644
index 00000000..c1074a8e
Binary files /dev/null and b/translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.sw.png differ
diff --git a/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.cs.png b/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.cs.png
new file mode 100644
index 00000000..a4cca4dc
Binary files /dev/null and b/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.cs.png differ
diff --git a/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.hu.png b/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.hu.png
new file mode 100644
index 00000000..a4cca4dc
Binary files /dev/null and b/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.hu.png differ
diff --git a/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.sw.png b/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.sw.png
new file mode 100644
index 00000000..a4cca4dc
Binary files /dev/null and b/translated_images/counterfit-temperature-sensor.f0560236c96a9016bafce7f6f792476fe3367bc6941a1f7d5811d144d4bcbfff.sw.png differ
diff --git a/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.cs.png b/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.cs.png
new file mode 100644
index 00000000..1dd02459
Binary files /dev/null and b/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.cs.png differ
diff --git a/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.hu.png b/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.hu.png
new file mode 100644
index 00000000..1dd02459
Binary files /dev/null and b/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.hu.png differ
diff --git a/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.sw.png b/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.sw.png
new file mode 100644
index 00000000..1dd02459
Binary files /dev/null and b/translated_images/custom-vision-banana-prediction.30cdff4e1d72db5d9a0be0193790a47c2b387da034e12dc1314dd57ca2131b59.sw.png differ
diff --git a/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.cs.png b/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.cs.png
new file mode 100644
index 00000000..64ba974b
Binary files /dev/null and b/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.cs.png differ
diff --git a/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.hu.png b/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.hu.png
new file mode 100644
index 00000000..64ba974b
Binary files /dev/null and b/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.hu.png differ
diff --git a/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.sw.png b/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.sw.png
new file mode 100644
index 00000000..64ba974b
Binary files /dev/null and b/translated_images/custom-vision-create-object-detector-project.32d4fb9aa8e7e7375f8a799bfce517aca970f2cb65e42d4245c5e635c734ab29.sw.png differ
diff --git a/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.cs.png b/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.cs.png
new file mode 100644
index 00000000..fd3d1f9b
Binary files /dev/null and b/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.cs.png differ
diff --git a/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.hu.png b/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.hu.png
new file mode 100644
index 00000000..fd3d1f9b
Binary files /dev/null and b/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.hu.png differ
diff --git a/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.sw.png b/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.sw.png
new file mode 100644
index 00000000..fd3d1f9b
Binary files /dev/null and b/translated_images/custom-vision-create-project.cf46325b92d8b131089f6647cf5e07b664cb77850e106d66e3c057b6b69756c6.sw.png differ
diff --git a/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.cs.png b/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.cs.png
new file mode 100644
index 00000000..f523159b
Binary files /dev/null and b/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.cs.png differ
diff --git a/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.hu.png b/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.hu.png
new file mode 100644
index 00000000..f523159b
Binary files /dev/null and b/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.hu.png differ
diff --git a/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.sw.png b/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.sw.png
new file mode 100644
index 00000000..f523159b
Binary files /dev/null and b/translated_images/custom-vision-logo.d3d4e7c8a87ec9daf825e72e210576c3cbf60312577be7a139e22dd97ab7f1e6.sw.png differ
diff --git a/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.cs.png b/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.cs.png
new file mode 100644
index 00000000..70a9bacf
Binary files /dev/null and b/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.cs.png differ
diff --git a/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.hu.png b/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.hu.png
new file mode 100644
index 00000000..70a9bacf
Binary files /dev/null and b/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.hu.png differ
diff --git a/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.sw.png b/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.sw.png
new file mode 100644
index 00000000..70a9bacf
Binary files /dev/null and b/translated_images/custom-vision-object-detector-publish-button.34ee379fc650ccb9856c3868d0003f413b9529f102fc73c37168c98d721cc293.sw.png differ
diff --git a/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.cs.png b/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.cs.png
new file mode 100644
index 00000000..9e30ab1c
Binary files /dev/null and b/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.cs.png differ
diff --git a/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.hu.png b/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.hu.png
new file mode 100644
index 00000000..9e30ab1c
Binary files /dev/null and b/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.hu.png differ
diff --git a/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.sw.png b/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.sw.png
new file mode 100644
index 00000000..9e30ab1c
Binary files /dev/null and b/translated_images/custom-vision-prediction-key-endpoint.30c569ffd0338864f319911f052d5e9b8c5066cb0800a26dd6f7ff5713130ad8.sw.png differ
diff --git a/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.cs.png b/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.cs.png
new file mode 100644
index 00000000..e9f61adc
Binary files /dev/null and b/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.cs.png differ
diff --git a/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.hu.png b/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.hu.png
new file mode 100644
index 00000000..e9f61adc
Binary files /dev/null and b/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.hu.png differ
diff --git a/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.sw.png b/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.sw.png
new file mode 100644
index 00000000..e9f61adc
Binary files /dev/null and b/translated_images/custom-vision-publish-button.b7174e1977b0c33b8b72d4e5b1326c779e0af196f3849d09985ee2d7d5493a39.sw.png differ
diff --git a/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.cs.png b/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.cs.png
new file mode 100644
index 00000000..a54521f7
Binary files /dev/null and b/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.cs.png differ
diff --git a/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.hu.png b/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.hu.png
new file mode 100644
index 00000000..a54521f7
Binary files /dev/null and b/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.hu.png differ
diff --git a/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.sw.png b/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.sw.png
new file mode 100644
index 00000000..a54521f7
Binary files /dev/null and b/translated_images/custom-vision-stock-prediction.942266ab1bcca3410ecdf23643b9f5f570cfab2345235074e24c51f285777613.sw.png differ
diff --git a/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.cs.png b/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.cs.png
new file mode 100644
index 00000000..6981df8a
Binary files /dev/null and b/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.cs.png differ
diff --git a/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.hu.png b/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.hu.png
new file mode 100644
index 00000000..6981df8a
Binary files /dev/null and b/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.hu.png differ
diff --git a/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.sw.png b/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.sw.png
new file mode 100644
index 00000000..6981df8a
Binary files /dev/null and b/translated_images/dimmable-light.9ceffeb195dec1a849da718b2d71b32c35171ff7dfea9c07bbf82646a67acf6b.sw.png differ
diff --git a/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.cs.png b/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.cs.png
new file mode 100644
index 00000000..2722c065
Binary files /dev/null and b/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.cs.png differ
diff --git a/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.hu.png b/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.hu.png
new file mode 100644
index 00000000..2722c065
Binary files /dev/null and b/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.hu.png differ
diff --git a/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.sw.png b/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.sw.png
new file mode 100644
index 00000000..2722c065
Binary files /dev/null and b/translated_images/dmac-adc-buffers.4509aee49145c90bc2e1be472b8ed2ddfcb2b6a81ad3e559114aca55f5fff759.sw.png differ
diff --git a/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.cs.jpg b/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.cs.jpg
new file mode 100644
index 00000000..cce2a759
Binary files /dev/null and b/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.cs.jpg differ
diff --git a/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.hu.jpg b/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.hu.jpg
new file mode 100644
index 00000000..cce2a759
Binary files /dev/null and b/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.hu.jpg differ
diff --git a/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.sw.jpg b/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.sw.jpg
new file mode 100644
index 00000000..cce2a759
Binary files /dev/null and b/translated_images/dynamic-mic.8babac890a2d80dfb0874b5bf37d4b851fe2aeb9da6fd72945746176978bf3bb.sw.jpg differ
diff --git a/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.cs.png b/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.cs.png
new file mode 100644
index 00000000..26e0ae43
Binary files /dev/null and b/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.cs.png differ
diff --git a/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.hu.png b/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.hu.png
new file mode 100644
index 00000000..26e0ae43
Binary files /dev/null and b/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.hu.png differ
diff --git a/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.sw.png b/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.sw.png
new file mode 100644
index 00000000..26e0ae43
Binary files /dev/null and b/translated_images/favicon.37b561214b36d454f9fd1f725d77f310fe256eb88f2a0ae08b9cb18aeb30650c.sw.png differ
diff --git a/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.cs.png b/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.cs.png
new file mode 100644
index 00000000..a5d549fd
Binary files /dev/null and b/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.cs.png differ
diff --git a/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.hu.png b/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.hu.png
new file mode 100644
index 00000000..a5d549fd
Binary files /dev/null and b/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.hu.png differ
diff --git a/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.sw.png b/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.sw.png
new file mode 100644
index 00000000..a5d549fd
Binary files /dev/null and b/translated_images/fetch-decode-execute.2fd6f150f6280392807f4475382319abd0cee0b90058e1735444d6baa6f2078c.sw.png differ
diff --git a/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.cs.png b/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.cs.png
new file mode 100644
index 00000000..a251745c
Binary files /dev/null and b/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.cs.png differ
diff --git a/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.hu.png b/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.hu.png
new file mode 100644
index 00000000..a251745c
Binary files /dev/null and b/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.hu.png differ
diff --git a/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.sw.png b/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.sw.png
new file mode 100644
index 00000000..a251745c
Binary files /dev/null and b/translated_images/fruit-quality-detector-message-flow.adf2a65da8fd8741ac7af11361574de89adc126785d67606bb4d2ec00467e380.sw.png differ
diff --git a/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.cs.png b/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.cs.png
new file mode 100644
index 00000000..bb97d28e
Binary files /dev/null and b/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.cs.png differ
diff --git a/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.hu.png b/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.hu.png
new file mode 100644
index 00000000..bb97d28e
Binary files /dev/null and b/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.hu.png differ
diff --git a/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.sw.png b/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.sw.png
new file mode 100644
index 00000000..bb97d28e
Binary files /dev/null and b/translated_images/gdd-calculation-corn.64a58b7a7afcd0dfd46ff733996d939f17f4f3feac9f0d1c632be3523e51ebd9.sw.png differ
diff --git a/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.cs.png b/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.cs.png
new file mode 100644
index 00000000..e34dea22
Binary files /dev/null and b/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.cs.png differ
diff --git a/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.hu.png b/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.hu.png
new file mode 100644
index 00000000..e34dea22
Binary files /dev/null and b/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.hu.png differ
diff --git a/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.sw.png b/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.sw.png
new file mode 100644
index 00000000..e34dea22
Binary files /dev/null and b/translated_images/gdd-calculation-strawberries.59f57db94b22adb8ff6efb951ace33af104a1c6ccca3ffb0f8169c14cb160c90.sw.png differ
diff --git a/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.cs.png b/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.cs.png
new file mode 100644
index 00000000..fa863501
Binary files /dev/null and b/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.cs.png differ
diff --git a/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.hu.png b/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.hu.png
new file mode 100644
index 00000000..fa863501
Binary files /dev/null and b/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.hu.png differ
diff --git a/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.sw.png b/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.sw.png
new file mode 100644
index 00000000..fa863501
Binary files /dev/null and b/translated_images/gdd-calculation.79b3660f9c5757aa92dc2dd2cdde75344e2d2c1565c4b3151640f7887edc0275.sw.png differ
diff --git a/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.cs.png b/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.cs.png
new file mode 100644
index 00000000..0d0e0c48
Binary files /dev/null and b/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.cs.png differ
diff --git a/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.hu.png b/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.hu.png
new file mode 100644
index 00000000..0d0e0c48
Binary files /dev/null and b/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.hu.png differ
diff --git a/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.sw.png b/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.sw.png
new file mode 100644
index 00000000..0d0e0c48
Binary files /dev/null and b/translated_images/gdd-jupyter-notebook.c5b52cf21094f158a61f47f455490fd95f1729777ff90861a4521820bf354cdc.sw.png differ
diff --git a/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.cs.png b/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.cs.png
new file mode 100644
index 00000000..6f79a498
Binary files /dev/null and b/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.cs.png differ
diff --git a/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.hu.png b/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.hu.png
new file mode 100644
index 00000000..6f79a498
Binary files /dev/null and b/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.hu.png differ
diff --git a/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.sw.png b/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.sw.png
new file mode 100644
index 00000000..6f79a498
Binary files /dev/null and b/translated_images/geofence-crossing-inaccurate-gps.6a3ed911202ad9cabb66d3964888cec03a42c61d5b8f536ad5bdc99716b370f5.sw.png differ
diff --git a/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.cs.png b/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.cs.png
new file mode 100644
index 00000000..8527d4cd
Binary files /dev/null and b/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.cs.png differ
diff --git a/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.hu.png b/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.hu.png
new file mode 100644
index 00000000..8527d4cd
Binary files /dev/null and b/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.hu.png differ
diff --git a/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.sw.png b/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.sw.png
new file mode 100644
index 00000000..8527d4cd
Binary files /dev/null and b/translated_images/geofence-examples.172fbc534665769f6e1a1ddcf75e3b25183cd10354c80cc603ba44b635390e1a.sw.png differ
diff --git a/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.cs.png b/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.cs.png
new file mode 100644
index 00000000..8597bf4d
Binary files /dev/null and b/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.cs.png differ
diff --git a/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.hu.png b/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.hu.png
new file mode 100644
index 00000000..8597bf4d
Binary files /dev/null and b/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.hu.png differ
diff --git a/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.sw.png b/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.sw.png
new file mode 100644
index 00000000..8597bf4d
Binary files /dev/null and b/translated_images/gps-satellites.04acf1148fe25fbf1586bc2e8ba698e8d79b79a50c36824b38417dd13372b90f.sw.png differ
diff --git a/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.cs.png b/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.cs.png
new file mode 100644
index 00000000..3bf24358
Binary files /dev/null and b/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.cs.png differ
diff --git a/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.hu.png b/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.hu.png
new file mode 100644
index 00000000..3bf24358
Binary files /dev/null and b/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.hu.png differ
diff --git a/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.sw.png b/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.sw.png
new file mode 100644
index 00000000..3bf24358
Binary files /dev/null and b/translated_images/gps-telemetry-iot-hub-functions.24d3fa5592455e9f4e2fe73856b40c3915a292b90263c31d652acfd976cfedd8.sw.png differ
diff --git a/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.cs.png b/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.cs.png
new file mode 100644
index 00000000..562f66d2
Binary files /dev/null and b/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.cs.png differ
diff --git a/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.hu.png b/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.hu.png
new file mode 100644
index 00000000..562f66d2
Binary files /dev/null and b/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.hu.png differ
diff --git a/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.sw.png b/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.sw.png
new file mode 100644
index 00000000..562f66d2
Binary files /dev/null and b/translated_images/gps-telemetry-iot-hub.8115335d51cd2c1285d20e9d1b18cf685e59a8e093e7797291ef173445af6f3d.sw.png differ
diff --git a/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.cs.png b/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.cs.png
new file mode 100644
index 00000000..2f50d53a
Binary files /dev/null and b/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.cs.png differ
diff --git a/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.hu.png b/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.hu.png
new file mode 100644
index 00000000..2f50d53a
Binary files /dev/null and b/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.hu.png differ
diff --git a/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.sw.png b/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.sw.png
new file mode 100644
index 00000000..2f50d53a
Binary files /dev/null and b/translated_images/grove-base-hat-ribbon-cable.501fed202fcf73b11b2b68f6d246189f7d15d3e4423c572ddee79d77b4632b47.sw.png differ
diff --git a/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.cs.png b/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.cs.png
new file mode 100644
index 00000000..de7f343e
Binary files /dev/null and b/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.cs.png differ
diff --git a/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.hu.png b/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.hu.png
new file mode 100644
index 00000000..de7f343e
Binary files /dev/null and b/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.hu.png differ
diff --git a/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.sw.png b/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.sw.png
new file mode 100644
index 00000000..de7f343e
Binary files /dev/null and b/translated_images/grove-button.a70cfbb809a8563681003250cf5b06d68cdcc68624f9e2f493d5a534ae2da1e5.sw.png differ
diff --git a/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.cs.png b/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.cs.png
new file mode 100644
index 00000000..c8b1a544
Binary files /dev/null and b/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.cs.png differ
diff --git a/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.hu.png b/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.hu.png
new file mode 100644
index 00000000..c8b1a544
Binary files /dev/null and b/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.hu.png differ
diff --git a/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.sw.png b/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.sw.png
new file mode 100644
index 00000000..c8b1a544
Binary files /dev/null and b/translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.sw.png differ
diff --git a/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.cs.png b/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.cs.png
new file mode 100644
index 00000000..17d1151d
Binary files /dev/null and b/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.cs.png differ
diff --git a/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.hu.png b/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.hu.png
new file mode 100644
index 00000000..17d1151d
Binary files /dev/null and b/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.hu.png differ
diff --git a/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.sw.png b/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.sw.png
new file mode 100644
index 00000000..17d1151d
Binary files /dev/null and b/translated_images/grove-dht11.07f8eafceee170043efbb53e1d15722bd4e00fbaa9ff74290b57e9f66eb82c17.sw.png differ
diff --git a/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.cs.png b/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.cs.png
new file mode 100644
index 00000000..ffafc104
Binary files /dev/null and b/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.cs.png differ
diff --git a/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.hu.png b/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.hu.png
new file mode 100644
index 00000000..ffafc104
Binary files /dev/null and b/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.hu.png differ
diff --git a/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.sw.png b/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.sw.png
new file mode 100644
index 00000000..ffafc104
Binary files /dev/null and b/translated_images/grove-gps-sensor.247943bf69b03f0d1820ef6ed10c587f9b650e8db55b936851c92412180bd3e2.sw.png differ
diff --git a/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.cs.png b/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.cs.png
new file mode 100644
index 00000000..e3d86f8c
Binary files /dev/null and b/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.cs.png differ
diff --git a/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.hu.png b/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.hu.png
new file mode 100644
index 00000000..e3d86f8c
Binary files /dev/null and b/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.hu.png differ
diff --git a/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.sw.png b/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.sw.png
new file mode 100644
index 00000000..e3d86f8c
Binary files /dev/null and b/translated_images/grove-led.6c853be93f473cf2c439cfc74bb1064732b22251a83cedf66e62f783f9cc1a79.sw.png differ
diff --git a/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.cs.png b/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.cs.png
new file mode 100644
index 00000000..3a4445ee
Binary files /dev/null and b/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.cs.png differ
diff --git a/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.hu.png b/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.hu.png
new file mode 100644
index 00000000..3a4445ee
Binary files /dev/null and b/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.hu.png differ
diff --git a/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.sw.png b/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.sw.png
new file mode 100644
index 00000000..3a4445ee
Binary files /dev/null and b/translated_images/grove-light-sensor.b8127b7c434e632d6bcdb57587a14e9ef69a268a22df95d08628f62b8fa5505c.sw.png differ
diff --git a/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.cs.png b/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.cs.png
new file mode 100644
index 00000000..b2bf4d3f
Binary files /dev/null and b/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.cs.png differ
diff --git a/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.hu.png b/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.hu.png
new file mode 100644
index 00000000..b2bf4d3f
Binary files /dev/null and b/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.hu.png differ
diff --git a/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.sw.png b/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.sw.png
new file mode 100644
index 00000000..b2bf4d3f
Binary files /dev/null and b/translated_images/grove-relay-labelled.293e068f5c3c2a199bd7892f2661fdc9e10c920b535cfed317fbd6d1d4ae1168.sw.png differ
diff --git a/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.cs.png b/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.cs.png
new file mode 100644
index 00000000..467cedcd
Binary files /dev/null and b/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.cs.png differ
diff --git a/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.hu.png b/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.hu.png
new file mode 100644
index 00000000..467cedcd
Binary files /dev/null and b/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.hu.png differ
diff --git a/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.sw.png b/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.sw.png
new file mode 100644
index 00000000..467cedcd
Binary files /dev/null and b/translated_images/grove-relay.d426958ca210fbd0fb7983d7edc069d46c73a8b0a099d94797bd756f7b6bb6be.sw.png differ
diff --git a/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.cs.png b/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.cs.png
new file mode 100644
index 00000000..88efaa59
Binary files /dev/null and b/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.cs.png differ
diff --git a/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.hu.png b/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.hu.png
new file mode 100644
index 00000000..88efaa59
Binary files /dev/null and b/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.hu.png differ
diff --git a/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.sw.png b/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.sw.png
new file mode 100644
index 00000000..88efaa59
Binary files /dev/null and b/translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.sw.png differ
diff --git a/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.cs.png b/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.cs.png
new file mode 100644
index 00000000..6197ed95
Binary files /dev/null and b/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.cs.png differ
diff --git a/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.hu.png b/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.hu.png
new file mode 100644
index 00000000..6197ed95
Binary files /dev/null and b/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.hu.png differ
diff --git a/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.sw.png b/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.sw.png
new file mode 100644
index 00000000..6197ed95
Binary files /dev/null and b/translated_images/gsm-calculation-example.99f9803b4f29e97668e7c15412136c0c399ab12dbba0b89596fdae9d8aedb6fb.sw.png differ
diff --git a/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.cs.png b/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.cs.png
new file mode 100644
index 00000000..ec7768da
Binary files /dev/null and b/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.cs.png differ
diff --git a/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.hu.png b/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.hu.png
new file mode 100644
index 00000000..ec7768da
Binary files /dev/null and b/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.hu.png differ
diff --git a/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.sw.png b/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.sw.png
new file mode 100644
index 00000000..ec7768da
Binary files /dev/null and b/translated_images/gsm-calculation.6da38c6201eec14e7573bb2647aa18892883193553d23c9d77e5dc681522dfb2.sw.png differ
diff --git a/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.cs.png b/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.cs.png
new file mode 100644
index 00000000..f68bf461
Binary files /dev/null and b/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.cs.png differ
diff --git a/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.hu.png b/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.hu.png
new file mode 100644
index 00000000..f68bf461
Binary files /dev/null and b/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.hu.png differ
diff --git a/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.sw.png b/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.sw.png
new file mode 100644
index 00000000..f68bf461
Binary files /dev/null and b/translated_images/i2c.83da845dde02256bdd462dbe0d5145461416b74930571b89d1ae142841eeb584.sw.png differ
diff --git a/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.cs.png b/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.cs.png
new file mode 100644
index 00000000..73e34cfe
Binary files /dev/null and b/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.cs.png differ
diff --git a/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.hu.png b/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.hu.png
new file mode 100644
index 00000000..73e34cfe
Binary files /dev/null and b/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.hu.png differ
diff --git a/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.sw.png b/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.sw.png
new file mode 100644
index 00000000..73e34cfe
Binary files /dev/null and b/translated_images/image-classifier-cashews-tomato.bc2e16ab8f05cf9ac0f59f73e32efc4227f9a5b601b90b2c60f436694547a965.sw.png differ
diff --git a/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.cs.png b/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.cs.png
new file mode 100644
index 00000000..21cc6bd0
Binary files /dev/null and b/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.cs.png differ
diff --git a/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.hu.png b/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.hu.png
new file mode 100644
index 00000000..21cc6bd0
Binary files /dev/null and b/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.hu.png differ
diff --git a/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.sw.png b/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.sw.png
new file mode 100644
index 00000000..21cc6bd0
Binary files /dev/null and b/translated_images/image-upload-bananas.0751639f3815e0ec42bdbc6254d1e4357a185834d1ae10c9948a0e7d6d336695.sw.png differ
diff --git a/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.cs.png b/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.cs.png
new file mode 100644
index 00000000..9c7deb23
Binary files /dev/null and b/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.cs.png differ
diff --git a/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.hu.png b/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.hu.png
new file mode 100644
index 00000000..9c7deb23
Binary files /dev/null and b/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.hu.png differ
diff --git a/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.sw.png b/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.sw.png
new file mode 100644
index 00000000..9c7deb23
Binary files /dev/null and b/translated_images/image-upload-object-detector.77c7892c3093cb59b79018edecd678749a75d71a099bc8a2d2f2f76320f88a5b.sw.png differ
diff --git a/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.cs.png b/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.cs.png
new file mode 100644
index 00000000..ddc9958b
Binary files /dev/null and b/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.cs.png differ
diff --git a/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.hu.png b/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.hu.png
new file mode 100644
index 00000000..ddc9958b
Binary files /dev/null and b/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.hu.png differ
diff --git a/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.sw.png b/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.sw.png
new file mode 100644
index 00000000..ddc9958b
Binary files /dev/null and b/translated_images/iot-device-and-hacked-device-connecting-encryption.5941aff601fc978f979e46f2849b573564eeb4a4dc5b52f669f62745397492fb.sw.png differ
diff --git a/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.cs.png b/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.cs.png
new file mode 100644
index 00000000..d181210a
Binary files /dev/null and b/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.cs.png differ
diff --git a/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.hu.png b/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.hu.png
new file mode 100644
index 00000000..d181210a
Binary files /dev/null and b/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.hu.png differ
diff --git a/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.sw.png b/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.sw.png
new file mode 100644
index 00000000..d181210a
Binary files /dev/null and b/translated_images/iot-device-and-hacked-device-connecting.e0671675df74d6d99eb1dedb5a670e606f698efa6202b1ad4c8ae548db299cc6.sw.png differ
diff --git a/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.cs.png b/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.cs.png
new file mode 100644
index 00000000..a00ab427
Binary files /dev/null and b/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.cs.png differ
diff --git a/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.hu.png b/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.hu.png
new file mode 100644
index 00000000..a00ab427
Binary files /dev/null and b/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.hu.png differ
diff --git a/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.sw.png b/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.sw.png
new file mode 100644
index 00000000..a00ab427
Binary files /dev/null and b/translated_images/iot-for-beginners.95958e2ed1900917f0c2173dd725ae0a2c1af97b9a26e56c76d3c8c8925f32ee.sw.png differ
diff --git a/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.cs.png b/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.cs.png
new file mode 100644
index 00000000..dedb38a3
Binary files /dev/null and b/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.cs.png differ
diff --git a/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.hu.png b/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.hu.png
new file mode 100644
index 00000000..dedb38a3
Binary files /dev/null and b/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.hu.png differ
diff --git a/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.sw.png b/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.sw.png
new file mode 100644
index 00000000..dedb38a3
Binary files /dev/null and b/translated_images/iot-hub-cloud-to-device-message.f4f21fea772cc20ba15004d853b805f6c01b612d257df6295ed7618550308aaf.sw.png differ
diff --git a/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.cs.png b/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.cs.png
new file mode 100644
index 00000000..2b34487d
Binary files /dev/null and b/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.cs.png differ
diff --git a/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.hu.png b/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.hu.png
new file mode 100644
index 00000000..2b34487d
Binary files /dev/null and b/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.hu.png differ
diff --git a/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.sw.png b/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.sw.png
new file mode 100644
index 00000000..2b34487d
Binary files /dev/null and b/translated_images/iot-hub-device-to-cloud-message.e46e584d87f35fd952657f0b566dcac59473fe960d87c96fa54a4b5438ddc31f.sw.png differ
diff --git a/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.cs.png b/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.cs.png
new file mode 100644
index 00000000..1cae68ed
Binary files /dev/null and b/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.cs.png differ
diff --git a/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.hu.png b/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.hu.png
new file mode 100644
index 00000000..1cae68ed
Binary files /dev/null and b/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.hu.png differ
diff --git a/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.sw.png b/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.sw.png
new file mode 100644
index 00000000..1cae68ed
Binary files /dev/null and b/translated_images/iot-hub-device-twins.7055a60fc5e2331c44298ae157d72edec0022910b1a4bf4bc93f39c620878b68.sw.png differ
diff --git a/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.cs.png b/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.cs.png
new file mode 100644
index 00000000..df961cae
Binary files /dev/null and b/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.cs.png differ
diff --git a/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.hu.png b/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.hu.png
new file mode 100644
index 00000000..df961cae
Binary files /dev/null and b/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.hu.png differ
diff --git a/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.sw.png b/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.sw.png
new file mode 100644
index 00000000..df961cae
Binary files /dev/null and b/translated_images/iot-hub-direct-method-request.86a5026e91f4ca1864e2043fab4b8199e42c2c6efc1209973cb56f199646b171.sw.png differ
diff --git a/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.cs.png b/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.cs.png
new file mode 100644
index 00000000..aaeaeff8
Binary files /dev/null and b/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.cs.png differ
diff --git a/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.hu.png b/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.hu.png
new file mode 100644
index 00000000..aaeaeff8
Binary files /dev/null and b/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.hu.png differ
diff --git a/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.sw.png b/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.sw.png
new file mode 100644
index 00000000..aaeaeff8
Binary files /dev/null and b/translated_images/iot-messages-to-serverless.0194da1cc0732bb7d0f823aed3fce54735c6b1ad3bf36089804d8aaefc0a774f.sw.png differ
diff --git a/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.cs.png b/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.cs.png
new file mode 100644
index 00000000..7613fe86
Binary files /dev/null and b/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.cs.png differ
diff --git a/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.hu.png b/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.hu.png
new file mode 100644
index 00000000..7613fe86
Binary files /dev/null and b/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.hu.png differ
diff --git a/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.sw.png b/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.sw.png
new file mode 100644
index 00000000..7613fe86
Binary files /dev/null and b/translated_images/iot-reference-architecture-azure.0b8d2161af924cb18ae48a8558a19541cca47f27264851b5b7e56d7b8bb372ac.sw.png differ
diff --git a/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.cs.png b/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.cs.png
new file mode 100644
index 00000000..335bdf32
Binary files /dev/null and b/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.cs.png differ
diff --git a/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.hu.png b/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.hu.png
new file mode 100644
index 00000000..335bdf32
Binary files /dev/null and b/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.hu.png differ
diff --git a/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.sw.png b/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.sw.png
new file mode 100644
index 00000000..335bdf32
Binary files /dev/null and b/translated_images/iot-reference-architecture-fruit-quality.cc705f121c3b6fa71c800d9630935ac34bc08223a04601e35f41d5e9b5dd5207.sw.png differ
diff --git a/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.cs.png b/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.cs.png
new file mode 100644
index 00000000..32c8ba10
Binary files /dev/null and b/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.cs.png differ
diff --git a/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.hu.png b/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.hu.png
new file mode 100644
index 00000000..32c8ba10
Binary files /dev/null and b/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.hu.png differ
diff --git a/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.sw.png b/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.sw.png
new file mode 100644
index 00000000..32c8ba10
Binary files /dev/null and b/translated_images/iot-reference-architecture.2278b98b55c6d4e89bde18eada3688d893861d43507641804dd2f9d3079cfaa0.sw.png differ
diff --git a/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.cs.png b/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.cs.png
new file mode 100644
index 00000000..82802e17
Binary files /dev/null and b/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.cs.png differ
diff --git a/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.hu.png b/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.hu.png
new file mode 100644
index 00000000..82802e17
Binary files /dev/null and b/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.hu.png differ
diff --git a/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.sw.png b/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.sw.png
new file mode 100644
index 00000000..82802e17
Binary files /dev/null and b/translated_images/iot-service-allowed-denied-connection.818b0063ac213fb84204a7229303764d9b467ca430fb822b4ac2fca267d56726.sw.png differ
diff --git a/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.cs.png b/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.cs.png
new file mode 100644
index 00000000..8214fc2c
Binary files /dev/null and b/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.cs.png differ
diff --git a/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.hu.png b/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.hu.png
new file mode 100644
index 00000000..8214fc2c
Binary files /dev/null and b/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.hu.png differ
diff --git a/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.sw.png b/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.sw.png
new file mode 100644
index 00000000..8214fc2c
Binary files /dev/null and b/translated_images/iot-service-connectivity.7e873847921a5d6fd60d0ba3a943210194518cee0d4e362476624316443275c3.sw.png differ
diff --git a/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.cs.png b/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.cs.png
new file mode 100644
index 00000000..434baaad
Binary files /dev/null and b/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.cs.png differ
diff --git a/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.hu.png b/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.hu.png
new file mode 100644
index 00000000..434baaad
Binary files /dev/null and b/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.hu.png differ
diff --git a/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.sw.png b/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.sw.png
new file mode 100644
index 00000000..434baaad
Binary files /dev/null and b/translated_images/latitude-equator.feccc3214b7d9fb1e1b2e44f938081c85149f092152de1509783b344e5f2097a.sw.png differ
diff --git a/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.cs.png b/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.cs.png
new file mode 100644
index 00000000..d32271b5
Binary files /dev/null and b/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.cs.png differ
diff --git a/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.hu.png b/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.hu.png
new file mode 100644
index 00000000..d32271b5
Binary files /dev/null and b/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.hu.png differ
diff --git a/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.sw.png b/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.sw.png
new file mode 100644
index 00000000..d32271b5
Binary files /dev/null and b/translated_images/latitude-lines.11d8d91dfb2014a57437272d7db7fd6607243098e8685f06e0c5f1ec984cb7eb.sw.png differ
diff --git a/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.cs.png b/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.cs.png
new file mode 100644
index 00000000..04cd7dc8
Binary files /dev/null and b/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.cs.png differ
diff --git a/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.hu.png b/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.hu.png
new file mode 100644
index 00000000..04cd7dc8
Binary files /dev/null and b/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.hu.png differ
diff --git a/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.sw.png b/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.sw.png
new file mode 100644
index 00000000..04cd7dc8
Binary files /dev/null and b/translated_images/led-digital-control.13b9be14077ea49f883c2ec52e1ce1c587804f2ed653f4061661e6a8783dd8c7.sw.png differ
diff --git a/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.cs.png b/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.cs.png
new file mode 100644
index 00000000..a8a12bce
Binary files /dev/null and b/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.cs.png differ
diff --git a/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.hu.png b/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.hu.png
new file mode 100644
index 00000000..a8a12bce
Binary files /dev/null and b/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.hu.png differ
diff --git a/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.sw.png b/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.sw.png
new file mode 100644
index 00000000..a8a12bce
Binary files /dev/null and b/translated_images/led.ec6d94f66676a174ad06d9fa9ea49c2ee89beb18b312d5c6476467c66375b07f.sw.png differ
diff --git a/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.cs.jpg b/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.cs.jpg
new file mode 100644
index 00000000..23ea98b2
Binary files /dev/null and b/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.cs.jpg differ
diff --git a/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.hu.jpg b/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.hu.jpg
new file mode 100644
index 00000000..23ea98b2
Binary files /dev/null and b/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.hu.jpg differ
diff --git a/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.sw.jpg b/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.sw.jpg
new file mode 100644
index 00000000..23ea98b2
Binary files /dev/null and b/translated_images/lesson-1.2606670fa61ee904687da5d6fa4e726639d524d064c895117da1b95b9ff6251d.sw.jpg differ
diff --git a/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.cs.jpg b/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.cs.jpg
new file mode 100644
index 00000000..1e3581d3
Binary files /dev/null and b/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.cs.jpg differ
diff --git a/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.hu.jpg b/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.hu.jpg
new file mode 100644
index 00000000..1e3581d3
Binary files /dev/null and b/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.hu.jpg differ
diff --git a/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.sw.jpg b/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.sw.jpg
new file mode 100644
index 00000000..1e3581d3
Binary files /dev/null and b/translated_images/lesson-10.829c86b80b9403bb770929ee553a1d293afe50dc23121aaf9be144673ae012cc.sw.jpg differ
diff --git a/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.cs.jpg b/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.cs.jpg
new file mode 100644
index 00000000..554ea37b
Binary files /dev/null and b/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.cs.jpg differ
diff --git a/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.hu.jpg b/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.hu.jpg
new file mode 100644
index 00000000..554ea37b
Binary files /dev/null and b/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.hu.jpg differ
diff --git a/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.sw.jpg b/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.sw.jpg
new file mode 100644
index 00000000..554ea37b
Binary files /dev/null and b/translated_images/lesson-11.9fddbac4b664c6d50ab7ac9bb32f1fc3f945f03760e72f7f43938073762fb017.sw.jpg differ
diff --git a/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.cs.jpg b/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.cs.jpg
new file mode 100644
index 00000000..427ba4c3
Binary files /dev/null and b/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.cs.jpg differ
diff --git a/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.hu.jpg b/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.hu.jpg
new file mode 100644
index 00000000..427ba4c3
Binary files /dev/null and b/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.hu.jpg differ
diff --git a/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.sw.jpg b/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.sw.jpg
new file mode 100644
index 00000000..427ba4c3
Binary files /dev/null and b/translated_images/lesson-12.ca7f53039712a3ec14ad6474d8445361c84adab643edc53fa6269b77895606bb.sw.jpg differ
diff --git a/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.cs.jpg b/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.cs.jpg
new file mode 100644
index 00000000..b2357285
Binary files /dev/null and b/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.cs.jpg differ
diff --git a/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.hu.jpg b/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.hu.jpg
new file mode 100644
index 00000000..b2357285
Binary files /dev/null and b/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.hu.jpg differ
diff --git a/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.sw.jpg b/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.sw.jpg
new file mode 100644
index 00000000..b2357285
Binary files /dev/null and b/translated_images/lesson-13.a259db1485021be7d7c72e90842fbe0ab977529e8684c179b5fb1ea75e92b3ef.sw.jpg differ
diff --git a/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.cs.jpg b/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.cs.jpg
new file mode 100644
index 00000000..1736ebb4
Binary files /dev/null and b/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.cs.jpg differ
diff --git a/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.hu.jpg b/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.hu.jpg
new file mode 100644
index 00000000..1736ebb4
Binary files /dev/null and b/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.hu.jpg differ
diff --git a/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.sw.jpg b/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.sw.jpg
new file mode 100644
index 00000000..1736ebb4
Binary files /dev/null and b/translated_images/lesson-14.63980c5150ae3c153e770fb71d044c1845dce79248d86bed9fc525adf3ede73c.sw.jpg differ
diff --git a/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.cs.jpg b/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.cs.jpg
new file mode 100644
index 00000000..bf1d724f
Binary files /dev/null and b/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.cs.jpg differ
diff --git a/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.hu.jpg b/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.hu.jpg
new file mode 100644
index 00000000..bf1d724f
Binary files /dev/null and b/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.hu.jpg differ
diff --git a/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.sw.jpg b/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.sw.jpg
new file mode 100644
index 00000000..bf1d724f
Binary files /dev/null and b/translated_images/lesson-15.843d21afdc6fb2bba70cd9db7b7d2f91598859fafda2078b0bdc44954194b6c0.sw.jpg differ
diff --git a/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.cs.jpg b/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.cs.jpg
new file mode 100644
index 00000000..bb78259a
Binary files /dev/null and b/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.cs.jpg differ
diff --git a/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.hu.jpg b/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.hu.jpg
new file mode 100644
index 00000000..bb78259a
Binary files /dev/null and b/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.hu.jpg differ
diff --git a/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.sw.jpg b/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.sw.jpg
new file mode 100644
index 00000000..bb78259a
Binary files /dev/null and b/translated_images/lesson-16.215daf18b00631fbdfd64c6fc2dc6044dff5d544288825d8076f9fb83d964c23.sw.jpg differ
diff --git a/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.cs.jpg b/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.cs.jpg
new file mode 100644
index 00000000..b311b568
Binary files /dev/null and b/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.cs.jpg differ
diff --git a/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.hu.jpg b/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.hu.jpg
new file mode 100644
index 00000000..b311b568
Binary files /dev/null and b/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.hu.jpg differ
diff --git a/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.sw.jpg b/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.sw.jpg
new file mode 100644
index 00000000..b311b568
Binary files /dev/null and b/translated_images/lesson-17.bc333c3c35ba8e42cce666cfffa82b915f787f455bd94e006aea2b6f2722421a.sw.jpg differ
diff --git a/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.cs.jpg b/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.cs.jpg
new file mode 100644
index 00000000..5bd350fd
Binary files /dev/null and b/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.cs.jpg differ
diff --git a/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.hu.jpg b/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.hu.jpg
new file mode 100644
index 00000000..5bd350fd
Binary files /dev/null and b/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.hu.jpg differ
diff --git a/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.sw.jpg b/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.sw.jpg
new file mode 100644
index 00000000..5bd350fd
Binary files /dev/null and b/translated_images/lesson-18.92c32ed1d354caa5a54baa4032cf0b172d4655e8e326ad5d46c558a0def15365.sw.jpg differ
diff --git a/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.cs.jpg b/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.cs.jpg
new file mode 100644
index 00000000..66fbe114
Binary files /dev/null and b/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.cs.jpg differ
diff --git a/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.hu.jpg b/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.hu.jpg
new file mode 100644
index 00000000..66fbe114
Binary files /dev/null and b/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.hu.jpg differ
diff --git a/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.sw.jpg b/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.sw.jpg
new file mode 100644
index 00000000..66fbe114
Binary files /dev/null and b/translated_images/lesson-19.cf6973cecadf080c4b526310620dc4d6f5994c80fb0139c6f378cc9ca2d435cd.sw.jpg differ
diff --git a/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.cs.jpg b/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.cs.jpg
new file mode 100644
index 00000000..050e7206
Binary files /dev/null and b/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.cs.jpg differ
diff --git a/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.hu.jpg b/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.hu.jpg
new file mode 100644
index 00000000..050e7206
Binary files /dev/null and b/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.hu.jpg differ
diff --git a/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.sw.jpg b/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.sw.jpg
new file mode 100644
index 00000000..050e7206
Binary files /dev/null and b/translated_images/lesson-2.324b0580d620c25e0a24fb7fddfc0b29a846dd4b82c08e7a9466d580ee78ce51.sw.jpg differ
diff --git a/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.cs.jpg b/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.cs.jpg
new file mode 100644
index 00000000..91c64faa
Binary files /dev/null and b/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.cs.jpg differ
diff --git a/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.hu.jpg b/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.hu.jpg
new file mode 100644
index 00000000..91c64faa
Binary files /dev/null and b/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.hu.jpg differ
diff --git a/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.sw.jpg b/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.sw.jpg
new file mode 100644
index 00000000..91c64faa
Binary files /dev/null and b/translated_images/lesson-20.0211df9551a8abb300fc8fcf7dc2789468dea2eabe9202273ac077b0ba37f15e.sw.jpg differ
diff --git a/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.cs.jpg b/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.cs.jpg
new file mode 100644
index 00000000..36e1a4b3
Binary files /dev/null and b/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.cs.jpg differ
diff --git a/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.hu.jpg b/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.hu.jpg
new file mode 100644
index 00000000..36e1a4b3
Binary files /dev/null and b/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.hu.jpg differ
diff --git a/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.sw.jpg b/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.sw.jpg
new file mode 100644
index 00000000..36e1a4b3
Binary files /dev/null and b/translated_images/lesson-21.e34de51354d6606fb5ee08d8c89d0222eea0a2a7aaf744a8805ae847c4f69dc4.sw.jpg differ
diff --git a/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.cs.jpg b/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.cs.jpg
new file mode 100644
index 00000000..1b87df4c
Binary files /dev/null and b/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.cs.jpg differ
diff --git a/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.hu.jpg b/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.hu.jpg
new file mode 100644
index 00000000..1b87df4c
Binary files /dev/null and b/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.hu.jpg differ
diff --git a/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.sw.jpg b/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.sw.jpg
new file mode 100644
index 00000000..1b87df4c
Binary files /dev/null and b/translated_images/lesson-22.6148ea28500d9e00c396aaa2649935fb6641362c8f03d8e5e90a676977ab01dd.sw.jpg differ
diff --git a/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.cs.jpg b/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.cs.jpg
new file mode 100644
index 00000000..8df37a22
Binary files /dev/null and b/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.cs.jpg differ
diff --git a/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.hu.jpg b/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.hu.jpg
new file mode 100644
index 00000000..8df37a22
Binary files /dev/null and b/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.hu.jpg differ
diff --git a/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.sw.jpg b/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.sw.jpg
new file mode 100644
index 00000000..8df37a22
Binary files /dev/null and b/translated_images/lesson-23.f38483e1d4df4828990d3f02d60e46c978b075d384ae7cb4f7bab738e107c850.sw.jpg differ
diff --git a/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.cs.jpg b/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.cs.jpg
new file mode 100644
index 00000000..943af1b9
Binary files /dev/null and b/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.cs.jpg differ
diff --git a/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.hu.jpg b/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.hu.jpg
new file mode 100644
index 00000000..943af1b9
Binary files /dev/null and b/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.hu.jpg differ
diff --git a/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.sw.jpg b/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.sw.jpg
new file mode 100644
index 00000000..943af1b9
Binary files /dev/null and b/translated_images/lesson-24.4246968ed058510ab275052e87ef9aa89c7b2f938915d103c605c04dc6cd5bb7.sw.jpg differ
diff --git a/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.cs.jpg b/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.cs.jpg
new file mode 100644
index 00000000..5a96f7fb
Binary files /dev/null and b/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.cs.jpg differ
diff --git a/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.hu.jpg b/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.hu.jpg
new file mode 100644
index 00000000..5a96f7fb
Binary files /dev/null and b/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.hu.jpg differ
diff --git a/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.sw.jpg b/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.sw.jpg
new file mode 100644
index 00000000..5a96f7fb
Binary files /dev/null and b/translated_images/lesson-3.cc3b7b4cd646de598698cce043c0393fd62ef42bac2eaf60e61272cd844250f4.sw.jpg differ
diff --git a/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.cs.jpg b/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.cs.jpg
new file mode 100644
index 00000000..8f0bee50
Binary files /dev/null and b/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.cs.jpg differ
diff --git a/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.hu.jpg b/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.hu.jpg
new file mode 100644
index 00000000..8f0bee50
Binary files /dev/null and b/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.hu.jpg differ
diff --git a/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.sw.jpg b/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.sw.jpg
new file mode 100644
index 00000000..8f0bee50
Binary files /dev/null and b/translated_images/lesson-4.7344e074ea68fa545fd320b12dce36d72dd62d28c3b4596cb26cf315f434b98f.sw.jpg differ
diff --git a/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.cs.jpg b/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.cs.jpg
new file mode 100644
index 00000000..4ba24109
Binary files /dev/null and b/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.cs.jpg differ
diff --git a/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.hu.jpg b/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.hu.jpg
new file mode 100644
index 00000000..4ba24109
Binary files /dev/null and b/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.hu.jpg differ
diff --git a/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.sw.jpg b/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.sw.jpg
new file mode 100644
index 00000000..4ba24109
Binary files /dev/null and b/translated_images/lesson-5.42b234299279d263143148b88ab4583861a32ddb03110c6c1120e41bb88b2592.sw.jpg differ
diff --git a/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.cs.jpg b/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.cs.jpg
new file mode 100644
index 00000000..cdf0f557
Binary files /dev/null and b/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.cs.jpg differ
diff --git a/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.hu.jpg b/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.hu.jpg
new file mode 100644
index 00000000..cdf0f557
Binary files /dev/null and b/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.hu.jpg differ
diff --git a/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.sw.jpg b/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.sw.jpg
new file mode 100644
index 00000000..cdf0f557
Binary files /dev/null and b/translated_images/lesson-6.3e493b60eee85adc8c74dfeaaec3a3a6cfba61fedbcb84aa0146e7e80603a5dd.sw.jpg differ
diff --git a/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.cs.jpg b/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.cs.jpg
new file mode 100644
index 00000000..f59ee98d
Binary files /dev/null and b/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.cs.jpg differ
diff --git a/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.hu.jpg b/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.hu.jpg
new file mode 100644
index 00000000..f59ee98d
Binary files /dev/null and b/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.hu.jpg differ
diff --git a/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.sw.jpg b/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.sw.jpg
new file mode 100644
index 00000000..f59ee98d
Binary files /dev/null and b/translated_images/lesson-7.30b5f577d3cb8e031238751475cb519c7d6dbaea261b5df4643d086ffb2a03bb.sw.jpg differ
diff --git a/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.cs.jpg b/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.cs.jpg
new file mode 100644
index 00000000..5bdbfd14
Binary files /dev/null and b/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.cs.jpg differ
diff --git a/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.hu.jpg b/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.hu.jpg
new file mode 100644
index 00000000..5bdbfd14
Binary files /dev/null and b/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.hu.jpg differ
diff --git a/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.sw.jpg b/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.sw.jpg
new file mode 100644
index 00000000..5bdbfd14
Binary files /dev/null and b/translated_images/lesson-8.3f21f3c11159e6a0a376351973ea5724d5de68fa23b4288853a174bed9ac48c3.sw.jpg differ
diff --git a/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.cs.jpg b/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.cs.jpg
new file mode 100644
index 00000000..b78ab3ac
Binary files /dev/null and b/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.cs.jpg differ
diff --git a/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.hu.jpg b/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.hu.jpg
new file mode 100644
index 00000000..b78ab3ac
Binary files /dev/null and b/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.hu.jpg differ
diff --git a/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.sw.jpg b/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.sw.jpg
new file mode 100644
index 00000000..b78ab3ac
Binary files /dev/null and b/translated_images/lesson-9.dfe99c8e891f48e179724520da9f5794392cf9a625079281ccdcbf09bd85e1b6.sw.jpg differ
diff --git a/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.cs.png b/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.cs.png
new file mode 100644
index 00000000..d071dffe
Binary files /dev/null and b/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.cs.png differ
diff --git a/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.hu.png b/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.hu.png
new file mode 100644
index 00000000..d071dffe
Binary files /dev/null and b/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.hu.png differ
diff --git a/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.sw.png b/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.sw.png
new file mode 100644
index 00000000..d071dffe
Binary files /dev/null and b/translated_images/light-switch.760317ad6ab8bd6d611da5352dfe9c73a94a0822ccec7df3c8bae35da18e1658.sw.png differ
diff --git a/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.cs.png b/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.cs.png
new file mode 100644
index 00000000..b8947f6d
Binary files /dev/null and b/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.cs.png differ
diff --git a/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.hu.png b/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.hu.png
new file mode 100644
index 00000000..b8947f6d
Binary files /dev/null and b/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.hu.png differ
diff --git a/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.sw.png b/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.sw.png
new file mode 100644
index 00000000..b8947f6d
Binary files /dev/null and b/translated_images/lines-of-longitude-and-latitude.032aca9d3e402c4e89da3f1c269b955f0dac443ae4ae3dd6e1dada5761c39a92.sw.png differ
diff --git a/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.cs.png b/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.cs.png
new file mode 100644
index 00000000..5c5dfb96
Binary files /dev/null and b/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.cs.png differ
diff --git a/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.hu.png b/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.hu.png
new file mode 100644
index 00000000..5c5dfb96
Binary files /dev/null and b/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.hu.png differ
diff --git a/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.sw.png b/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.sw.png
new file mode 100644
index 00000000..5c5dfb96
Binary files /dev/null and b/translated_images/longitude-meridians.ab4ef1c91c064586b0185a3c8d39e585903696c6a7d28c098a93a629cddb5d20.sw.png differ
diff --git a/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.cs.png b/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.cs.png
new file mode 100644
index 00000000..663ad7e9
Binary files /dev/null and b/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.cs.png differ
diff --git a/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.hu.png b/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.hu.png
new file mode 100644
index 00000000..663ad7e9
Binary files /dev/null and b/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.hu.png differ
diff --git a/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.sw.png b/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.sw.png
new file mode 100644
index 00000000..663ad7e9
Binary files /dev/null and b/translated_images/longitude-prime-meridian.33b01b41ce615f9ddf85d91b0f93bdc076cfa44bb10b17296de42e2d1ba1090e.sw.png differ
diff --git a/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.cs.png b/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.cs.png
new file mode 100644
index 00000000..b1e33d6b
Binary files /dev/null and b/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.cs.png differ
diff --git a/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.hu.png b/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.hu.png
new file mode 100644
index 00000000..b1e33d6b
Binary files /dev/null and b/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.hu.png differ
diff --git a/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.sw.png b/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.sw.png
new file mode 100644
index 00000000..b1e33d6b
Binary files /dev/null and b/translated_images/luis-intent-examples.25716580b2d2723cf1bafdf277d015c7f046d8cfa20f27bddf3a0873ec45fab7.sw.png differ
diff --git a/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.cs.png b/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.cs.png
new file mode 100644
index 00000000..2a03ab78
Binary files /dev/null and b/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.cs.png differ
diff --git a/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.hu.png b/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.hu.png
new file mode 100644
index 00000000..2a03ab78
Binary files /dev/null and b/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.hu.png differ
diff --git a/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.sw.png b/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.sw.png
new file mode 100644
index 00000000..2a03ab78
Binary files /dev/null and b/translated_images/luis-logo.5cb4f3e88c020ee6df4f614e8831f4a4b6809a7247bf52085fb48d629ef9be52.sw.png differ
diff --git a/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.cs.png b/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.cs.png
new file mode 100644
index 00000000..02ef1351
Binary files /dev/null and b/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.cs.png differ
diff --git a/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.hu.png b/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.hu.png
new file mode 100644
index 00000000..02ef1351
Binary files /dev/null and b/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.hu.png differ
diff --git a/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.sw.png b/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.sw.png
new file mode 100644
index 00000000..02ef1351
Binary files /dev/null and b/translated_images/map-image.8fb2c53eb23ef39c1c0a4410a5282e879b3b452b707eb066ff04c5488d3d72b7.sw.png differ
diff --git a/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.cs.png b/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.cs.png
new file mode 100644
index 00000000..33faabd1
Binary files /dev/null and b/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.cs.png differ
diff --git a/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.hu.png b/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.hu.png
new file mode 100644
index 00000000..33faabd1
Binary files /dev/null and b/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.hu.png differ
diff --git a/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.sw.png b/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.sw.png
new file mode 100644
index 00000000..33faabd1
Binary files /dev/null and b/translated_images/map-path.896832e72dc696ffe20650e4051027d4855442d955f93fdbb80bb417ca8a406f.sw.png differ
diff --git a/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.cs.png b/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.cs.png
new file mode 100644
index 00000000..aa94da2c
Binary files /dev/null and b/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.cs.png differ
diff --git a/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.hu.png b/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.hu.png
new file mode 100644
index 00000000..aa94da2c
Binary files /dev/null and b/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.hu.png differ
diff --git a/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.sw.png b/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.sw.png
new file mode 100644
index 00000000..aa94da2c
Binary files /dev/null and b/translated_images/mems-microphone.80574019e1f5e4d9ee72fed720ecd25a39fc2969c91355d17ebb24ba4159e4c4.sw.png differ
diff --git a/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.cs.png b/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.cs.png
new file mode 100644
index 00000000..ac000818
Binary files /dev/null and b/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.cs.png differ
diff --git a/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.hu.png b/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.hu.png
new file mode 100644
index 00000000..ac000818
Binary files /dev/null and b/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.hu.png differ
diff --git a/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.sw.png b/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.sw.png
new file mode 100644
index 00000000..ac000818
Binary files /dev/null and b/translated_images/microsoft-gps-location-world.a321d481b010f6adfcca139b2ba0adc53b79f58a540495b8e2ce7f779ea64bfe.sw.png differ
diff --git a/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.cs.png b/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.cs.png
new file mode 100644
index 00000000..2fb519f5
Binary files /dev/null and b/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.cs.png differ
diff --git a/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.hu.png b/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.hu.png
new file mode 100644
index 00000000..2fb519f5
Binary files /dev/null and b/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.hu.png differ
diff --git a/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.sw.png b/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.sw.png
new file mode 100644
index 00000000..2fb519f5
Binary files /dev/null and b/translated_images/microsoft-gps-location.9eb77a13b22b7e70a0a80bd2b54c24eda141b4ee15a0373c93f8c73f4fcd81f5.sw.png differ
diff --git a/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.cs.png b/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.cs.png
new file mode 100644
index 00000000..48459b92
Binary files /dev/null and b/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.cs.png differ
diff --git a/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.hu.png b/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.hu.png
new file mode 100644
index 00000000..48459b92
Binary files /dev/null and b/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.hu.png differ
diff --git a/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.sw.png b/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.sw.png
new file mode 100644
index 00000000..48459b92
Binary files /dev/null and b/translated_images/mobile-controlled-thermostat.4a994010473d8d6a52ba68c67e5f02dc8928c717e93ca4b9bc55525aa75bbb60.sw.png differ
diff --git a/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.cs.png b/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.cs.png
new file mode 100644
index 00000000..d502a579
Binary files /dev/null and b/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.cs.png differ
diff --git a/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.hu.png b/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.hu.png
new file mode 100644
index 00000000..d502a579
Binary files /dev/null and b/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.hu.png differ
diff --git a/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.sw.png b/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.sw.png
new file mode 100644
index 00000000..d502a579
Binary files /dev/null and b/translated_images/mqtt.cbf7f21d9adc3e17548b359444cc11bb4bf2010543e32ece9a47becf54438c23.sw.png differ
diff --git a/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.cs.png b/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.cs.png
new file mode 100644
index 00000000..fca45002
Binary files /dev/null and b/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.cs.png differ
diff --git a/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.hu.png b/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.hu.png
new file mode 100644
index 00000000..fca45002
Binary files /dev/null and b/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.hu.png differ
diff --git a/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.sw.png b/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.sw.png
new file mode 100644
index 00000000..fca45002
Binary files /dev/null and b/translated_images/noqsl-database.62d24ccf5b73f60d35c245a8533f1c7147c0928e955b82cb290b2e184bb434df.sw.png differ
diff --git a/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.cs.png b/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.cs.png
new file mode 100644
index 00000000..94aa28db
Binary files /dev/null and b/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.cs.png differ
diff --git a/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.hu.png b/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.hu.png
new file mode 100644
index 00000000..94aa28db
Binary files /dev/null and b/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.hu.png differ
diff --git a/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.sw.png b/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.sw.png
new file mode 100644
index 00000000..94aa28db
Binary files /dev/null and b/translated_images/object-detector-cashews-tomato.1af7c26686b4db0e709754aeb196f4e73271f54e2085db3bcccb70d4a0d84d97.sw.png differ
diff --git a/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.cs.png b/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.cs.png
new file mode 100644
index 00000000..894df473
Binary files /dev/null and b/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.cs.png differ
diff --git a/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.hu.png b/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.hu.png
new file mode 100644
index 00000000..894df473
Binary files /dev/null and b/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.hu.png differ
diff --git a/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.sw.png b/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.sw.png
new file mode 100644
index 00000000..894df473
Binary files /dev/null and b/translated_images/object-detector-detected-tomato-paste.52656fe87af4c37b4ee540526d63e73ed075da2e54a9a060aa528e0c562fb1b6.sw.png differ
diff --git a/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.cs.png b/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.cs.png
new file mode 100644
index 00000000..b75dfdd2
Binary files /dev/null and b/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.cs.png differ
diff --git a/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.hu.png b/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.hu.png
new file mode 100644
index 00000000..b75dfdd2
Binary files /dev/null and b/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.hu.png differ
diff --git a/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.sw.png b/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.sw.png
new file mode 100644
index 00000000..b75dfdd2
Binary files /dev/null and b/translated_images/object-detector-tag-tomato-paste.f47c362fb0f0eb582f3bc68cf3855fb43a805106395358d41896a269c210b7b4.sw.png differ
diff --git a/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.cs.png b/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.cs.png
new file mode 100644
index 00000000..1e7934c3
Binary files /dev/null and b/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.cs.png differ
diff --git a/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.hu.png b/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.hu.png
new file mode 100644
index 00000000..1e7934c3
Binary files /dev/null and b/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.hu.png differ
diff --git a/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.sw.png b/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.sw.png
new file mode 100644
index 00000000..1e7934c3
Binary files /dev/null and b/translated_images/optical-tomato-sorting.61aa134bdda4e5b1bfb16a212c1e35a6ef0c426cbb8b1c975f79d7bfbf48d068.sw.png differ
diff --git a/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.cs.png b/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.cs.png
new file mode 100644
index 00000000..5bb319ec
Binary files /dev/null and b/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.cs.png differ
diff --git a/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.hu.png b/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.hu.png
new file mode 100644
index 00000000..5bb319ec
Binary files /dev/null and b/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.hu.png differ
diff --git a/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.sw.png b/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.sw.png
new file mode 100644
index 00000000..5bb319ec
Binary files /dev/null and b/translated_images/overlap-object-detection.d431e03cae75072a2760430eca7f2c5fdd43045bfd72dadcbf12711f7cd6c2ae.sw.png differ
diff --git a/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.cs.png b/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.cs.png
new file mode 100644
index 00000000..d66e224f
Binary files /dev/null and b/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.cs.png differ
diff --git a/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.hu.png b/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.hu.png
new file mode 100644
index 00000000..d66e224f
Binary files /dev/null and b/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.hu.png differ
diff --git a/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.sw.png b/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.sw.png
new file mode 100644
index 00000000..d66e224f
Binary files /dev/null and b/translated_images/pi-button.c7a1a4f55943341ce1baf1057658e9a205804d4131d258e820c93f951df0abf3.sw.png differ
diff --git a/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.cs.png b/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.cs.png
new file mode 100644
index 00000000..ed18e7b0
Binary files /dev/null and b/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.cs.png differ
diff --git a/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.hu.png b/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.hu.png
new file mode 100644
index 00000000..ed18e7b0
Binary files /dev/null and b/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.hu.png differ
diff --git a/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.sw.png b/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.sw.png
new file mode 100644
index 00000000..ed18e7b0
Binary files /dev/null and b/translated_images/pi-camera-module.4278753c31bd6e757aa2b858be97d72049f71616278cefe4fb5abb485b40a078.sw.png differ
diff --git a/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.cs.png b/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.cs.png
new file mode 100644
index 00000000..9acb21a7
Binary files /dev/null and b/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.cs.png differ
diff --git a/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.hu.png b/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.hu.png
new file mode 100644
index 00000000..9acb21a7
Binary files /dev/null and b/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.hu.png differ
diff --git a/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.sw.png b/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.sw.png
new file mode 100644
index 00000000..9acb21a7
Binary files /dev/null and b/translated_images/pi-camera-ribbon-cable.0bf82acd251611c21ac616f082849413e2b322a261d0e4f8fec344248083b07e.sw.png differ
diff --git a/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.cs.png b/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.cs.png
new file mode 100644
index 00000000..1ced5fc1
Binary files /dev/null and b/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.cs.png differ
diff --git a/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.hu.png b/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.hu.png
new file mode 100644
index 00000000..1ced5fc1
Binary files /dev/null and b/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.hu.png differ
diff --git a/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.sw.png b/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.sw.png
new file mode 100644
index 00000000..1ced5fc1
Binary files /dev/null and b/translated_images/pi-camera-socket-ribbon-cable.a18309920b11800911082ed7aa6fb28e6d9be3a022e4079ff990016cae3fca10.sw.png differ
diff --git a/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.cs.png b/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.cs.png
new file mode 100644
index 00000000..7293ced1
Binary files /dev/null and b/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.cs.png differ
diff --git a/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.hu.png b/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.hu.png
new file mode 100644
index 00000000..7293ced1
Binary files /dev/null and b/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.hu.png differ
diff --git a/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.sw.png b/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.sw.png
new file mode 100644
index 00000000..7293ced1
Binary files /dev/null and b/translated_images/pi-camera-upside-down.5376961ba31459883362124152ad6b823d5ac5fc14e85f317e22903bd681c2b6.sw.png differ
diff --git a/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.cs.png b/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.cs.png
new file mode 100644
index 00000000..be837c63
Binary files /dev/null and b/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.cs.png differ
diff --git a/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.hu.png b/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.hu.png
new file mode 100644
index 00000000..be837c63
Binary files /dev/null and b/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.hu.png differ
diff --git a/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.sw.png b/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.sw.png
new file mode 100644
index 00000000..be837c63
Binary files /dev/null and b/translated_images/pi-gps-sensor.1f99ee2b2f6528915047ec78967bd362e0e4ee0ed594368a3837b9cf9cdaca64.sw.png differ
diff --git a/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.cs.png b/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.cs.png
new file mode 100644
index 00000000..73861107
Binary files /dev/null and b/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.cs.png differ
diff --git a/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.hu.png b/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.hu.png
new file mode 100644
index 00000000..73861107
Binary files /dev/null and b/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.hu.png differ
diff --git a/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.sw.png b/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.sw.png
new file mode 100644
index 00000000..73861107
Binary files /dev/null and b/translated_images/pi-hardware-kit.26dbadaedb7dd44c73b0131d5d68ea29472ed0a9744f90d5866c6d82f2d16380.sw.png differ
diff --git a/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.cs.png b/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.cs.png
new file mode 100644
index 00000000..1b26d7ff
Binary files /dev/null and b/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.cs.png differ
diff --git a/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.hu.png b/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.hu.png
new file mode 100644
index 00000000..1b26d7ff
Binary files /dev/null and b/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.hu.png differ
diff --git a/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.sw.png b/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.sw.png
new file mode 100644
index 00000000..1b26d7ff
Binary files /dev/null and b/translated_images/pi-led.97f1d474981dc35d1c7996c7b17de355d3d0a6bc9606d79fa5f89df933415122.sw.png differ
diff --git a/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.cs.png b/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.cs.png
new file mode 100644
index 00000000..f1905ecc
Binary files /dev/null and b/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.cs.png differ
diff --git a/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.hu.png b/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.hu.png
new file mode 100644
index 00000000..f1905ecc
Binary files /dev/null and b/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.hu.png differ
diff --git a/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.sw.png b/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.sw.png
new file mode 100644
index 00000000..f1905ecc
Binary files /dev/null and b/translated_images/pi-light-sensor.66cc1e31fa48cd7d5f23400d4b2119aa41508275cb7c778053a7923b4e972d7e.sw.png differ
diff --git a/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.cs.png b/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.cs.png
new file mode 100644
index 00000000..edc44fa9
Binary files /dev/null and b/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.cs.png differ
diff --git a/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.hu.png b/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.hu.png
new file mode 100644
index 00000000..edc44fa9
Binary files /dev/null and b/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.hu.png differ
diff --git a/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.sw.png b/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.sw.png
new file mode 100644
index 00000000..edc44fa9
Binary files /dev/null and b/translated_images/pi-relay-and-soil-moisture-sensor.02f3198975b8c53e69ec716cd2719ce117700bd1fc933eaf93476c103c57939b.sw.png differ
diff --git a/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.cs.png b/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.cs.png
new file mode 100644
index 00000000..87854d3a
Binary files /dev/null and b/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.cs.png differ
diff --git a/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.hu.png b/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.hu.png
new file mode 100644
index 00000000..87854d3a
Binary files /dev/null and b/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.hu.png differ
diff --git a/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.sw.png b/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.sw.png
new file mode 100644
index 00000000..87854d3a
Binary files /dev/null and b/translated_images/pi-respeaker-hat.f00fabe7dd039a93e2e0aa0fc946c9af0c6a9eb17c32fa1ca097fb4e384f69f0.sw.png differ
diff --git a/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.cs.png b/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.cs.png
new file mode 100644
index 00000000..d1158e0d
Binary files /dev/null and b/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.cs.png differ
diff --git a/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.hu.png b/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.hu.png
new file mode 100644
index 00000000..d1158e0d
Binary files /dev/null and b/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.hu.png differ
diff --git a/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.sw.png b/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.sw.png
new file mode 100644
index 00000000..d1158e0d
Binary files /dev/null and b/translated_images/pi-soil-moisture-sensor.fdd7eb2393792cf6739cacf1985d9f55beda16d372f30d0b5a51d586f978a870.sw.png differ
diff --git a/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.cs.png b/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.cs.png
new file mode 100644
index 00000000..122abea4
Binary files /dev/null and b/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.cs.png differ
diff --git a/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.hu.png b/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.hu.png
new file mode 100644
index 00000000..122abea4
Binary files /dev/null and b/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.hu.png differ
diff --git a/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.sw.png b/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.sw.png
new file mode 100644
index 00000000..122abea4
Binary files /dev/null and b/translated_images/pi-temperature-sensor.3ff82fff672c8e565ef25a39d26d111de006b825a7e0867227ef4e7fbff8553c.sw.png differ
diff --git a/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.cs.png b/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.cs.png
new file mode 100644
index 00000000..dc009aa5
Binary files /dev/null and b/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.cs.png differ
diff --git a/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.hu.png b/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.hu.png
new file mode 100644
index 00000000..dc009aa5
Binary files /dev/null and b/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.hu.png differ
diff --git a/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.sw.png b/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.sw.png
new file mode 100644
index 00000000..dc009aa5
Binary files /dev/null and b/translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.sw.png differ
diff --git a/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.cs.png b/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.cs.png
new file mode 100644
index 00000000..ccb0d4e1
Binary files /dev/null and b/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.cs.png differ
diff --git a/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.hu.png b/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.hu.png
new file mode 100644
index 00000000..ccb0d4e1
Binary files /dev/null and b/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.hu.png differ
diff --git a/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.sw.png b/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.sw.png
new file mode 100644
index 00000000..ccb0d4e1
Binary files /dev/null and b/translated_images/plant-growth-temp-graph copy.65baa28afd9b7f5fbc04bf7c9684b086c466a467631568c23549d54949fc71d2.sw.png differ
diff --git a/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.cs.png b/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.cs.png
new file mode 100644
index 00000000..ccb0d4e1
Binary files /dev/null and b/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.cs.png differ
diff --git a/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.hu.png b/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.hu.png
new file mode 100644
index 00000000..ccb0d4e1
Binary files /dev/null and b/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.hu.png differ
diff --git a/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.sw.png b/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.sw.png
new file mode 100644
index 00000000..ccb0d4e1
Binary files /dev/null and b/translated_images/plant-growth-temp-graph.c6d69c9478e6ca832baa8dcb8d4adcbb67304074ce50e94ac8faae95975177f9.sw.png differ
diff --git a/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.cs.png b/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.cs.png
new file mode 100644
index 00000000..12274b8b
Binary files /dev/null and b/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.cs.png differ
diff --git a/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.hu.png b/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.hu.png
new file mode 100644
index 00000000..12274b8b
Binary files /dev/null and b/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.hu.png differ
diff --git a/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.sw.png b/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.sw.png
new file mode 100644
index 00000000..12274b8b
Binary files /dev/null and b/translated_images/polygon-points.302193da381cb415f46c2c7a98496ee4be05d6c73d21238a89721ad93e121233.sw.png differ
diff --git a/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.cs.png b/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.cs.png
new file mode 100644
index 00000000..da226797
Binary files /dev/null and b/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.cs.png differ
diff --git a/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.hu.png b/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.hu.png
new file mode 100644
index 00000000..da226797
Binary files /dev/null and b/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.hu.png differ
diff --git a/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.sw.png b/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.sw.png
new file mode 100644
index 00000000..da226797
Binary files /dev/null and b/translated_images/potentiometer.35a348b9ce22f6ec1199ad37d68692d04185456ccbc2541a454bb6698be9f19c.sw.png differ
diff --git a/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.cs.png b/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.cs.png
new file mode 100644
index 00000000..67bd8a82
Binary files /dev/null and b/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.cs.png differ
diff --git a/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.hu.png b/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.hu.png
new file mode 100644
index 00000000..67bd8a82
Binary files /dev/null and b/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.hu.png differ
diff --git a/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.sw.png b/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.sw.png
new file mode 100644
index 00000000..67bd8a82
Binary files /dev/null and b/translated_images/proximity-sensor.f5cd752c77fb62fea000156233b32fd24fad3707ec69b8bdd8d312b7af85156d.sw.png differ
diff --git a/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.cs.png b/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.cs.png
new file mode 100644
index 00000000..18938f59
Binary files /dev/null and b/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.cs.png differ
diff --git a/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.hu.png b/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.hu.png
new file mode 100644
index 00000000..18938f59
Binary files /dev/null and b/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.hu.png differ
diff --git a/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.sw.png b/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.sw.png
new file mode 100644
index 00000000..18938f59
Binary files /dev/null and b/translated_images/pub-sub.7c7ed43fe9fd15d4e1f81a3fd95440413c457acd9bcbe9a43341e30e88db5264.sw.png differ
diff --git a/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.cs.png b/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.cs.png
new file mode 100644
index 00000000..db480604
Binary files /dev/null and b/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.cs.png differ
diff --git a/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.hu.png b/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.hu.png
new file mode 100644
index 00000000..db480604
Binary files /dev/null and b/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.hu.png differ
diff --git a/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.sw.png b/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.sw.png
new file mode 100644
index 00000000..db480604
Binary files /dev/null and b/translated_images/pump-wired-to-relay.66c5cfc0d89189900cd601777f5caeb39ee35c6250f6c86bf38feaceedb21fe9.sw.png differ
diff --git a/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.cs.png b/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.cs.png
new file mode 100644
index 00000000..535e5798
Binary files /dev/null and b/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.cs.png differ
diff --git a/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.hu.png b/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.hu.png
new file mode 100644
index 00000000..535e5798
Binary files /dev/null and b/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.hu.png differ
diff --git a/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.sw.png b/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.sw.png
new file mode 100644
index 00000000..535e5798
Binary files /dev/null and b/translated_images/pwm-motor-150rpm.83347ac04ca38482bd120939b133803963c9c15ca9d8d484712a4bd92820f6a4.sw.png differ
diff --git a/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.cs.png b/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.cs.png
new file mode 100644
index 00000000..b3d83ab7
Binary files /dev/null and b/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.cs.png differ
diff --git a/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.hu.png b/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.hu.png
new file mode 100644
index 00000000..b3d83ab7
Binary files /dev/null and b/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.hu.png differ
diff --git a/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.sw.png b/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.sw.png
new file mode 100644
index 00000000..b3d83ab7
Binary files /dev/null and b/translated_images/pwm-motor-75rpm.a5e4c939934b6e14fd9e98e4f2c9539d723da2b18f490eae0948dd044d18ff7e.sw.png differ
diff --git a/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.cs.png b/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.cs.png
new file mode 100644
index 00000000..4bb97d60
Binary files /dev/null and b/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.cs.png differ
diff --git a/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.hu.png b/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.hu.png
new file mode 100644
index 00000000..4bb97d60
Binary files /dev/null and b/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.hu.png differ
diff --git a/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.sw.png b/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.sw.png
new file mode 100644
index 00000000..4bb97d60
Binary files /dev/null and b/translated_images/ram-comparison.6beb73541b42ac6ffde64cdf79fc925a84b932ce7ebd4d41d5fd7afc1257a696.sw.png differ
diff --git a/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.cs.jpg b/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.cs.jpg
new file mode 100644
index 00000000..4cf0d73d
Binary files /dev/null and b/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.cs.jpg differ
diff --git a/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.hu.jpg b/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.hu.jpg
new file mode 100644
index 00000000..4cf0d73d
Binary files /dev/null and b/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.hu.jpg differ
diff --git a/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.sw.jpg b/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.sw.jpg
new file mode 100644
index 00000000..4cf0d73d
Binary files /dev/null and b/translated_images/raspberry-pi-4.fd4590d308c3d456db1327e86b395ddcd735513267aafd4879ea2785f7792eac.sw.jpg differ
diff --git a/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.cs.png b/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.cs.png
new file mode 100644
index 00000000..0aace880
Binary files /dev/null and b/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.cs.png differ
diff --git a/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.hu.png b/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.hu.png
new file mode 100644
index 00000000..0aace880
Binary files /dev/null and b/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.hu.png differ
diff --git a/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.sw.png b/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.sw.png
new file mode 100644
index 00000000..0aace880
Binary files /dev/null and b/translated_images/raspberry-pi-imager.24aedeab9e233d841a1504ed7cfeb871b1f8e1134cfcd8370e7f60a092056be2.sw.png differ
diff --git a/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.cs.png b/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.cs.png
new file mode 100644
index 00000000..b19b1f6b
Binary files /dev/null and b/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.cs.png differ
diff --git a/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.hu.png b/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.hu.png
new file mode 100644
index 00000000..b19b1f6b
Binary files /dev/null and b/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.hu.png differ
diff --git a/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.sw.png b/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.sw.png
new file mode 100644
index 00000000..b19b1f6b
Binary files /dev/null and b/translated_images/raspberry-pi-logo.4efaa16605cee05489d8fa53941e991b3757aa24c20a95abdcf8cfd761953596.sw.png differ
diff --git a/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.cs.jpg b/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.cs.jpg
new file mode 100644
index 00000000..827670ed
Binary files /dev/null and b/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.cs.jpg differ
diff --git a/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.hu.jpg b/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.hu.jpg
new file mode 100644
index 00000000..827670ed
Binary files /dev/null and b/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.hu.jpg differ
diff --git a/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.sw.jpg b/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.sw.jpg
new file mode 100644
index 00000000..827670ed
Binary files /dev/null and b/translated_images/raspberry-pi-zero.f7a4133e1e7d54bb3dbb32319b217a53c5b94871995a54647f2894b54206b8d8.sw.jpg differ
diff --git a/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.cs.png b/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.cs.png
new file mode 100644
index 00000000..435f901a
Binary files /dev/null and b/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.cs.png differ
diff --git a/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.hu.png b/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.hu.png
new file mode 100644
index 00000000..435f901a
Binary files /dev/null and b/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.hu.png differ
diff --git a/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.sw.png b/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.sw.png
new file mode 100644
index 00000000..435f901a
Binary files /dev/null and b/translated_images/relay-off.c34a178a2960fecdc3c6400d43e633ed11c6746cd653cfb4a768fa097c40394c.sw.png differ
diff --git a/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.cs.png b/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.cs.png
new file mode 100644
index 00000000..7308a1d1
Binary files /dev/null and b/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.cs.png differ
diff --git a/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.hu.png b/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.hu.png
new file mode 100644
index 00000000..7308a1d1
Binary files /dev/null and b/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.hu.png differ
diff --git a/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.sw.png b/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.sw.png
new file mode 100644
index 00000000..7308a1d1
Binary files /dev/null and b/translated_images/relay-on.4db16a0fd6b669262fd6699aff3fbcd31b6057c06d90411b6bddc06326d1cf75.sw.png differ
diff --git a/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.cs.png b/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.cs.png
new file mode 100644
index 00000000..8454c4d2
Binary files /dev/null and b/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.cs.png differ
diff --git a/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.hu.png b/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.hu.png
new file mode 100644
index 00000000..8454c4d2
Binary files /dev/null and b/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.hu.png differ
diff --git a/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.sw.png b/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.sw.png
new file mode 100644
index 00000000..8454c4d2
Binary files /dev/null and b/translated_images/resistive-soil-moisture-sensor.728a138a3d109e0653d8e4f6744140836c67461bbd0f4d887f47ed8228dc80b5.sw.png differ
diff --git a/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.cs.png b/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.cs.png
new file mode 100644
index 00000000..324b711d
Binary files /dev/null and b/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.cs.png differ
diff --git a/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.hu.png b/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.hu.png
new file mode 100644
index 00000000..324b711d
Binary files /dev/null and b/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.hu.png differ
diff --git a/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.sw.png b/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.sw.png
new file mode 100644
index 00000000..324b711d
Binary files /dev/null and b/translated_images/respeaker-35mm-speaker.ad79ef4f128c7751f0abf854869b6b779c90c12ae3e48909944a7e48aeee3c7e.sw.png differ
diff --git a/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.cs.png b/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.cs.png
new file mode 100644
index 00000000..ddfb42aa
Binary files /dev/null and b/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.cs.png differ
diff --git a/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.hu.png b/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.hu.png
new file mode 100644
index 00000000..ddfb42aa
Binary files /dev/null and b/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.hu.png differ
diff --git a/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.sw.png b/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.sw.png
new file mode 100644
index 00000000..ddfb42aa
Binary files /dev/null and b/translated_images/respeaker-jst-speaker.a441d177809df9458041a2012dd336dbb22c00a5c9642647109d2940a50d6fcc.sw.png differ
diff --git a/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.cs.png b/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.cs.png
new file mode 100644
index 00000000..280f2fe0
Binary files /dev/null and b/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.cs.png differ
diff --git a/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.hu.png b/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.hu.png
new file mode 100644
index 00000000..280f2fe0
Binary files /dev/null and b/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.hu.png differ
diff --git a/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.sw.png b/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.sw.png
new file mode 100644
index 00000000..280f2fe0
Binary files /dev/null and b/translated_images/respeaker.f5d19d1c6b14ab1676d24ac2764e64fac5339046ae07be8b45ce07633d61b79b.sw.png differ
diff --git a/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.cs.jpg b/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.cs.jpg
new file mode 100644
index 00000000..89b581ef
Binary files /dev/null and b/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.cs.jpg differ
diff --git a/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.hu.jpg b/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.hu.jpg
new file mode 100644
index 00000000..89b581ef
Binary files /dev/null and b/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.hu.jpg differ
diff --git a/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.sw.jpg b/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.sw.jpg
new file mode 100644
index 00000000..89b581ef
Binary files /dev/null and b/translated_images/ribbon-mic.eacc8e092c7441caee6d7a81e2f40e1675bf36269848964c7c09c9a9acb05127.sw.jpg differ
diff --git a/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.cs.jpg b/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.cs.jpg
new file mode 100644
index 00000000..6efd2da1
Binary files /dev/null and b/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.cs.jpg differ
diff --git a/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.hu.jpg b/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.hu.jpg
new file mode 100644
index 00000000..6efd2da1
Binary files /dev/null and b/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.hu.jpg differ
diff --git a/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.sw.jpg b/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.sw.jpg
new file mode 100644
index 00000000..6efd2da1
Binary files /dev/null and b/translated_images/rpi-stock-with-bounding-boxes.b5540e2ecb7cd49f1271828d3be412671d950e87625c5597ea97c90f11e01097.sw.jpg differ
diff --git a/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.cs.png b/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.cs.png
new file mode 100644
index 00000000..348fe7a0
Binary files /dev/null and b/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.cs.png differ
diff --git a/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.hu.png b/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.hu.png
new file mode 100644
index 00000000..348fe7a0
Binary files /dev/null and b/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.hu.png differ
diff --git a/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.sw.png b/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.sw.png
new file mode 100644
index 00000000..348fe7a0
Binary files /dev/null and b/translated_images/sampling.6f4fadb3f2d9dfe7618f9edfe75a350e6b3f74293ec84f02ab69c19d2afe3d73.sw.png differ
diff --git a/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.cs.png b/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.cs.png
new file mode 100644
index 00000000..a69e73f4
Binary files /dev/null and b/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.cs.png differ
diff --git a/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.hu.png b/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.hu.png
new file mode 100644
index 00000000..a69e73f4
Binary files /dev/null and b/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.hu.png differ
diff --git a/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.sw.png b/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.sw.png
new file mode 100644
index 00000000..a69e73f4
Binary files /dev/null and b/translated_images/save-telemetry-database.ddc9c6bea0c5ba39449966a463ca6748cd8e2d565dab44ff31c9f1d2f6c21d27.sw.png differ
diff --git a/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.cs.png b/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.cs.png
new file mode 100644
index 00000000..49b0ca9b
Binary files /dev/null and b/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.cs.png differ
diff --git a/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.hu.png b/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.hu.png
new file mode 100644
index 00000000..49b0ca9b
Binary files /dev/null and b/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.hu.png differ
diff --git a/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.sw.png b/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.sw.png
new file mode 100644
index 00000000..49b0ca9b
Binary files /dev/null and b/translated_images/save-telemetry-to-storage-from-functions.ed3b1820980097f143d9f0570072da11304c2bc7906359dfa075b4d9b253c20f.sw.png differ
diff --git a/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.cs.png b/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.cs.png
new file mode 100644
index 00000000..458a3c95
Binary files /dev/null and b/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.cs.png differ
diff --git a/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.hu.png b/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.hu.png
new file mode 100644
index 00000000..458a3c95
Binary files /dev/null and b/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.hu.png differ
diff --git a/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.sw.png b/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.sw.png
new file mode 100644
index 00000000..458a3c95
Binary files /dev/null and b/translated_images/search-buffer-and-distance.e6a79af3898183c7b2ef6fbf12271b8b34afd23969bb946962b1b18d3d2635e8.sw.png differ
diff --git a/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.cs.png b/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.cs.png
new file mode 100644
index 00000000..90b687c2
Binary files /dev/null and b/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.cs.png differ
diff --git a/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.hu.png b/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.hu.png
new file mode 100644
index 00000000..90b687c2
Binary files /dev/null and b/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.hu.png differ
diff --git a/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.sw.png b/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.sw.png
new file mode 100644
index 00000000..90b687c2
Binary files /dev/null and b/translated_images/seeed-logo.74732b6b482b6e8e8bdcc06f0541fc92b1dabf5e3e8f37afb91e04393a8cb977.sw.png differ
diff --git a/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.cs.png b/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.cs.png
new file mode 100644
index 00000000..cb4bc445
Binary files /dev/null and b/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.cs.png differ
diff --git a/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.hu.png b/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.hu.png
new file mode 100644
index 00000000..cb4bc445
Binary files /dev/null and b/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.hu.png differ
diff --git a/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.sw.png b/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.sw.png
new file mode 100644
index 00000000..cb4bc445
Binary files /dev/null and b/translated_images/select-the-random-checkbox-and-set-a-range.32cf4bc7c12e797f8c76616b10c7c23a6592321bb1a6310e0b481e72f97d23b3.sw.png differ
diff --git a/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.cs.png b/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.cs.png
new file mode 100644
index 00000000..e7ea8ab6
Binary files /dev/null and b/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.cs.png differ
diff --git a/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.hu.png b/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.hu.png
new file mode 100644
index 00000000..e7ea8ab6
Binary files /dev/null and b/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.hu.png differ
diff --git a/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.sw.png b/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.sw.png
new file mode 100644
index 00000000..e7ea8ab6
Binary files /dev/null and b/translated_images/send-message-asymmetric.7abe327c62615b8c19805252af5d4b6c5e7aaeb8fbc455efeff866fe2d300b62.sw.png differ
diff --git a/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.cs.png b/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.cs.png
new file mode 100644
index 00000000..6f138cf9
Binary files /dev/null and b/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.cs.png differ
diff --git a/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.hu.png b/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.hu.png
new file mode 100644
index 00000000..6f138cf9
Binary files /dev/null and b/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.hu.png differ
diff --git a/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.sw.png b/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.sw.png
new file mode 100644
index 00000000..6f138cf9
Binary files /dev/null and b/translated_images/send-message-certificate.9cc576ac1e46b76eb58ebc8eedaa522566fa0700076da46f5180aad78c2435db.sw.png differ
diff --git a/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.cs.png b/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.cs.png
new file mode 100644
index 00000000..2f5f2861
Binary files /dev/null and b/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.cs.png differ
diff --git a/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.hu.png b/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.hu.png
new file mode 100644
index 00000000..2f5f2861
Binary files /dev/null and b/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.hu.png differ
diff --git a/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.sw.png b/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.sw.png
new file mode 100644
index 00000000..2f5f2861
Binary files /dev/null and b/translated_images/send-message-symmetric-key-hacker.e7cb53db1707adfb1486a8144060cb76435fe8dbdede8cecc09e7d15b2d9a251.sw.png differ
diff --git a/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.cs.png b/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.cs.png
new file mode 100644
index 00000000..f2f1b63e
Binary files /dev/null and b/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.cs.png differ
diff --git a/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.hu.png b/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.hu.png
new file mode 100644
index 00000000..f2f1b63e
Binary files /dev/null and b/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.hu.png differ
diff --git a/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.sw.png b/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.sw.png
new file mode 100644
index 00000000..f2f1b63e
Binary files /dev/null and b/translated_images/send-message-symmetric-key.a2e8ad0d495896ffcdf15d25bb4491c695a5cb851457b359fb0f0c89d67707c9.sw.png differ
diff --git a/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.cs.png b/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.cs.png
new file mode 100644
index 00000000..5643c164
Binary files /dev/null and b/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.cs.png differ
diff --git a/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.hu.png b/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.hu.png
new file mode 100644
index 00000000..5643c164
Binary files /dev/null and b/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.hu.png differ
diff --git a/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.sw.png b/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.sw.png
new file mode 100644
index 00000000..5643c164
Binary files /dev/null and b/translated_images/sentence-as-intent-entities.301401696f9922590a99343f5c5d211b710b906f212f0d4d034cee3ffb610272.sw.png differ
diff --git a/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.cs.png b/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.cs.png
new file mode 100644
index 00000000..73fa30d1
Binary files /dev/null and b/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.cs.png differ
diff --git a/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.hu.png b/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.hu.png
new file mode 100644
index 00000000..73fa30d1
Binary files /dev/null and b/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.hu.png differ
diff --git a/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.sw.png b/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.sw.png
new file mode 100644
index 00000000..73fa30d1
Binary files /dev/null and b/translated_images/serverless-scaling.f8c769adf0413fd17be1af4f07ff63016b347e2ff869be6c4abb211f9e93909d.sw.png differ
diff --git a/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.cs.png b/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.cs.png
new file mode 100644
index 00000000..eee39f7d
Binary files /dev/null and b/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.cs.png differ
diff --git a/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.hu.png b/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.hu.png
new file mode 100644
index 00000000..eee39f7d
Binary files /dev/null and b/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.hu.png differ
diff --git a/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.sw.png b/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.sw.png
new file mode 100644
index 00000000..eee39f7d
Binary files /dev/null and b/translated_images/shapes-to-images.1a309f0ea88dd66fafa4da6d38e88806ce174cc6a88081efb32852230ed55de8.sw.png differ
diff --git a/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.cs.png b/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.cs.png
new file mode 100644
index 00000000..5a0fb117
Binary files /dev/null and b/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.cs.png differ
diff --git a/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.hu.png b/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.hu.png
new file mode 100644
index 00000000..5a0fb117
Binary files /dev/null and b/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.hu.png differ
diff --git a/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.sw.png b/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.sw.png
new file mode 100644
index 00000000..5a0fb117
Binary files /dev/null and b/translated_images/smarter-thermostat.a75855f15d2d9e63d5da9d7ba5847a987f6c9d98e96e770c203532275194e27d.sw.png differ
diff --git a/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.cs.png b/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.cs.png
new file mode 100644
index 00000000..27ddbfee
Binary files /dev/null and b/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.cs.png differ
diff --git a/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.hu.png b/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.hu.png
new file mode 100644
index 00000000..27ddbfee
Binary files /dev/null and b/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.hu.png differ
diff --git a/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.sw.png b/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.sw.png
new file mode 100644
index 00000000..27ddbfee
Binary files /dev/null and b/translated_images/soil-moisture-delay.865f3fae206db01d5f8f100f4f44040215d44a0412dd3450aef7ff7b93b6d273.sw.png differ
diff --git a/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.cs.png b/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.cs.png
new file mode 100644
index 00000000..ee07bd10
Binary files /dev/null and b/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.cs.png differ
diff --git a/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.hu.png b/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.hu.png
new file mode 100644
index 00000000..ee07bd10
Binary files /dev/null and b/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.hu.png differ
diff --git a/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.sw.png b/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.sw.png
new file mode 100644
index 00000000..ee07bd10
Binary files /dev/null and b/translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.sw.png differ
diff --git a/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.cs.png b/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.cs.png
new file mode 100644
index 00000000..37a2464a
Binary files /dev/null and b/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.cs.png differ
diff --git a/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.hu.png b/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.hu.png
new file mode 100644
index 00000000..37a2464a
Binary files /dev/null and b/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.hu.png differ
diff --git a/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.sw.png b/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.sw.png
new file mode 100644
index 00000000..37a2464a
Binary files /dev/null and b/translated_images/soil-moisture-to-voltage-with-reading.681cb3e1f8b68caf5547dbf1415851c82e201edfb78face16fc98da4051ed9b2.sw.png differ
diff --git a/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.cs.png b/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.cs.png
new file mode 100644
index 00000000..d852153c
Binary files /dev/null and b/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.cs.png differ
diff --git a/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.hu.png b/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.hu.png
new file mode 100644
index 00000000..d852153c
Binary files /dev/null and b/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.hu.png differ
diff --git a/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.sw.png b/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.sw.png
new file mode 100644
index 00000000..d852153c
Binary files /dev/null and b/translated_images/soil-moisture-to-voltage.df86d80cda1587008f312431ed5f79eb6c50c58d4fbc25a6763c5e9127c3106b.sw.png differ
diff --git a/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.cs.png b/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.cs.png
new file mode 100644
index 00000000..a457ac8d
Binary files /dev/null and b/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.cs.png differ
diff --git a/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.hu.png b/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.hu.png
new file mode 100644
index 00000000..a457ac8d
Binary files /dev/null and b/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.hu.png differ
diff --git a/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.sw.png b/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.sw.png
new file mode 100644
index 00000000..a457ac8d
Binary files /dev/null and b/translated_images/soil-moisture-travel.a0e31af222cf14385de5380dfc32c7b8213960965228b8e4f7b7ab7f73b310a3.sw.png differ
diff --git a/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.cs.png b/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.cs.png
new file mode 100644
index 00000000..3eccd326
Binary files /dev/null and b/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.cs.png differ
diff --git a/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.hu.png b/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.hu.png
new file mode 100644
index 00000000..3eccd326
Binary files /dev/null and b/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.hu.png differ
diff --git a/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.sw.png b/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.sw.png
new file mode 100644
index 00000000..3eccd326
Binary files /dev/null and b/translated_images/spi.297431d6f98b386b4ff88aea44ce9c1e7acfb1ef69c7e4e388a7aa97b6948e24.sw.png differ
diff --git a/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.cs.png b/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.cs.png
new file mode 100644
index 00000000..49083372
Binary files /dev/null and b/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.cs.png differ
diff --git a/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.hu.png b/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.hu.png
new file mode 100644
index 00000000..49083372
Binary files /dev/null and b/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.hu.png differ
diff --git a/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.sw.png b/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.sw.png
new file mode 100644
index 00000000..49083372
Binary files /dev/null and b/translated_images/sql-database.be160f12bfccefd3ca718a66468c2c4c89c53e5aad4c295324d576da87f9dfdd.sw.png differ
diff --git a/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.cs.png b/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.cs.png
new file mode 100644
index 00000000..1b4a94e5
Binary files /dev/null and b/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.cs.png differ
diff --git a/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.hu.png b/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.hu.png
new file mode 100644
index 00000000..1b4a94e5
Binary files /dev/null and b/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.hu.png differ
diff --git a/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.sw.png b/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.sw.png
new file mode 100644
index 00000000..1b4a94e5
Binary files /dev/null and b/translated_images/stock-7-cans-tomato-paste.f86059cc573d7becaa89a0eafb9d2cd7e2fe37405a530fe565990e2333d0e4a1.sw.png differ
diff --git a/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.cs.png b/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.cs.png
new file mode 100644
index 00000000..8589e88f
Binary files /dev/null and b/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.cs.png differ
diff --git a/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.hu.png b/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.hu.png
new file mode 100644
index 00000000..8589e88f
Binary files /dev/null and b/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.hu.png differ
diff --git a/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.sw.png b/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.sw.png
new file mode 100644
index 00000000..8589e88f
Binary files /dev/null and b/translated_images/stock-rogue-corn.be1f3ada8c4578544641af66671c1711a4c02297f14cc7f503354dae0d30a954.sw.png differ
diff --git a/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.cs.png b/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.cs.png
new file mode 100644
index 00000000..e1246f56
Binary files /dev/null and b/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.cs.png differ
diff --git a/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.hu.png b/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.hu.png
new file mode 100644
index 00000000..e1246f56
Binary files /dev/null and b/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.hu.png differ
diff --git a/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.sw.png b/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.sw.png
new file mode 100644
index 00000000..e1246f56
Binary files /dev/null and b/translated_images/strawberry-with-pump.b410fc72ac6aabad3e28de9775bf2393ead73dcfec6fd8c9bc01cf107ecd171a.sw.png differ
diff --git a/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.cs.png b/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.cs.png
new file mode 100644
index 00000000..db66a52b
Binary files /dev/null and b/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.cs.png differ
diff --git a/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.hu.png b/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.hu.png
new file mode 100644
index 00000000..db66a52b
Binary files /dev/null and b/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.hu.png differ
diff --git a/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.sw.png b/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.sw.png
new file mode 100644
index 00000000..db66a52b
Binary files /dev/null and b/translated_images/telemetry.21e5d8b97649d2ebeb0f68d4b9691ab2d1f7bd629338e131465aff8a614e4d4a.sw.png differ
diff --git a/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.cs.png b/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.cs.png
new file mode 100644
index 00000000..66c76c2f
Binary files /dev/null and b/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.cs.png differ
diff --git a/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.hu.png b/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.hu.png
new file mode 100644
index 00000000..66c76c2f
Binary files /dev/null and b/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.hu.png differ
diff --git a/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.sw.png b/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.sw.png
new file mode 100644
index 00000000..66c76c2f
Binary files /dev/null and b/translated_images/temperature-as-digital.85004491b977bae1129707df107c0b19fe6fc6374210e9027e04acb34a640c78.sw.png differ
diff --git a/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.cs.png b/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.cs.png
new file mode 100644
index 00000000..450b824c
Binary files /dev/null and b/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.cs.png differ
diff --git a/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.hu.png b/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.hu.png
new file mode 100644
index 00000000..450b824c
Binary files /dev/null and b/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.hu.png differ
diff --git a/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.sw.png b/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.sw.png
new file mode 100644
index 00000000..450b824c
Binary files /dev/null and b/translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.sw.png differ
diff --git a/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.cs.png b/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.cs.png
new file mode 100644
index 00000000..615bc7a9
Binary files /dev/null and b/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.cs.png differ
diff --git a/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.hu.png b/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.hu.png
new file mode 100644
index 00000000..615bc7a9
Binary files /dev/null and b/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.hu.png differ
diff --git a/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.sw.png b/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.sw.png
new file mode 100644
index 00000000..615bc7a9
Binary files /dev/null and b/translated_images/traditional-vs-ml.5c20c169621fa539ca84a2cd9a49f6ff7410b3a6c6b46c97ff2af3f99db3c66b.sw.png differ
diff --git a/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.cs.png b/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.cs.png
new file mode 100644
index 00000000..3c9e2930
Binary files /dev/null and b/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.cs.png differ
diff --git a/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.hu.png b/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.hu.png
new file mode 100644
index 00000000..3c9e2930
Binary files /dev/null and b/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.hu.png differ
diff --git a/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.sw.png b/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.sw.png
new file mode 100644
index 00000000..3c9e2930
Binary files /dev/null and b/translated_images/translated-smart-timer.08ac20057fdc5c3778ed41cb425dca5d7fbcd4584b6da7b73ca67115a5b8a883.sw.png differ
diff --git a/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.cs.png b/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.cs.png
new file mode 100644
index 00000000..e4bb0186
Binary files /dev/null and b/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.cs.png differ
diff --git a/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.hu.png b/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.hu.png
new file mode 100644
index 00000000..e4bb0186
Binary files /dev/null and b/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.hu.png differ
diff --git a/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.sw.png b/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.sw.png
new file mode 100644
index 00000000..e4bb0186
Binary files /dev/null and b/translated_images/transpiration.b735aa34e4372e659f76d82527e9ce683f076d56065d0d8fddf13321666f4d80.sw.png differ
diff --git a/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.cs.png b/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.cs.png
new file mode 100644
index 00000000..91e4cba6
Binary files /dev/null and b/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.cs.png differ
diff --git a/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.hu.png b/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.hu.png
new file mode 100644
index 00000000..91e4cba6
Binary files /dev/null and b/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.hu.png differ
diff --git a/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.sw.png b/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.sw.png
new file mode 100644
index 00000000..91e4cba6
Binary files /dev/null and b/translated_images/tts-overview.193843cf3f5ee09f8b3371a9fdaeb0f116698a07ca69daaa77158da4800e5453.sw.png differ
diff --git a/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.cs.png b/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.cs.png
new file mode 100644
index 00000000..91230d0c
Binary files /dev/null and b/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.cs.png differ
diff --git a/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.hu.png b/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.hu.png
new file mode 100644
index 00000000..91230d0c
Binary files /dev/null and b/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.hu.png differ
diff --git a/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.sw.png b/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.sw.png
new file mode 100644
index 00000000..91230d0c
Binary files /dev/null and b/translated_images/uart.d0dbd3fb9e3728c6ee1995c8206f3cdb13cdfd208f13745e8ef6854cab75e421.sw.png differ
diff --git a/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.cs.png b/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.cs.png
new file mode 100644
index 00000000..128cd4a9
Binary files /dev/null and b/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.cs.png differ
diff --git a/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.hu.png b/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.hu.png
new file mode 100644
index 00000000..128cd4a9
Binary files /dev/null and b/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.hu.png differ
diff --git a/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.sw.png b/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.sw.png
new file mode 100644
index 00000000..128cd4a9
Binary files /dev/null and b/translated_images/vscode-azure-functions-init-notification.bd19b49229963edb5311fb3a79445ea469424759d2917ee2f2eb6f92d65d5086.sw.png differ
diff --git a/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.cs.png b/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.cs.png
new file mode 100644
index 00000000..8d62d827
Binary files /dev/null and b/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.cs.png differ
diff --git a/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.hu.png b/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.hu.png
new file mode 100644
index 00000000..8d62d827
Binary files /dev/null and b/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.hu.png differ
diff --git a/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.sw.png b/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.sw.png
new file mode 100644
index 00000000..8d62d827
Binary files /dev/null and b/translated_images/vscode-kill-terminal.1cc4de7c6f25ee08f423f0ead714e61d069fac1eb2089e97b8a7bbcb3d45fe5e.sw.png differ
diff --git a/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.cs.png b/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.cs.png
new file mode 100644
index 00000000..a84ab661
Binary files /dev/null and b/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.cs.png differ
diff --git a/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.hu.png b/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.hu.png
new file mode 100644
index 00000000..a84ab661
Binary files /dev/null and b/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.hu.png differ
diff --git a/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.sw.png b/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.sw.png
new file mode 100644
index 00000000..a84ab661
Binary files /dev/null and b/translated_images/vscode-new-file-button.182702340fe6723c8cbb4cfa1a9a9fb0d0a5227643b4e46b91ff67b07a39a92f.sw.png differ
diff --git a/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.cs.png b/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.cs.png
new file mode 100644
index 00000000..4c88d3d3
Binary files /dev/null and b/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.cs.png differ
diff --git a/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.hu.png b/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.hu.png
new file mode 100644
index 00000000..4c88d3d3
Binary files /dev/null and b/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.hu.png differ
diff --git a/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.sw.png b/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.sw.png
new file mode 100644
index 00000000..4c88d3d3
Binary files /dev/null and b/translated_images/vscode-new-terminal.77db8fc0f9cd31824b0e49a201beafe4ae4616d6c7339992cb2819e789b3eff9.sw.png differ
diff --git a/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.cs.png b/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.cs.png
new file mode 100644
index 00000000..bc1895b8
Binary files /dev/null and b/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.cs.png differ
diff --git a/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.hu.png b/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.hu.png
new file mode 100644
index 00000000..bc1895b8
Binary files /dev/null and b/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.hu.png differ
diff --git a/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.sw.png b/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.sw.png
new file mode 100644
index 00000000..bc1895b8
Binary files /dev/null and b/translated_images/vscode-open-nightlight-remote.d3d2a4011e30d535c4b70084f6e94bf6b5b1327fd8e77affe64465ac151ee766.sw.png differ
diff --git a/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.cs.png b/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.cs.png
new file mode 100644
index 00000000..d8ff3180
Binary files /dev/null and b/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.cs.png differ
diff --git a/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.hu.png b/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.hu.png
new file mode 100644
index 00000000..d8ff3180
Binary files /dev/null and b/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.hu.png differ
diff --git a/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.sw.png b/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.sw.png
new file mode 100644
index 00000000..d8ff3180
Binary files /dev/null and b/translated_images/vscode-platformio-build-command-palette.7708e7ec7d75d7ee1a0551f42229a321c7e2e4bccac7f1a64df2ed55999f723d.sw.png differ
diff --git a/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.cs.png b/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.cs.png
new file mode 100644
index 00000000..06b86a65
Binary files /dev/null and b/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.cs.png differ
diff --git a/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.hu.png b/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.hu.png
new file mode 100644
index 00000000..06b86a65
Binary files /dev/null and b/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.hu.png differ
diff --git a/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.sw.png b/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.sw.png
new file mode 100644
index 00000000..06b86a65
Binary files /dev/null and b/translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.sw.png differ
diff --git a/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.cs.png b/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.cs.png
new file mode 100644
index 00000000..ac7aa47a
Binary files /dev/null and b/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.cs.png differ
diff --git a/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.hu.png b/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.hu.png
new file mode 100644
index 00000000..ac7aa47a
Binary files /dev/null and b/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.hu.png differ
diff --git a/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.sw.png b/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.sw.png
new file mode 100644
index 00000000..ac7aa47a
Binary files /dev/null and b/translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.sw.png differ
diff --git a/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.cs.png b/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.cs.png
new file mode 100644
index 00000000..20480a22
Binary files /dev/null and b/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.cs.png differ
diff --git a/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.hu.png b/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.hu.png
new file mode 100644
index 00000000..20480a22
Binary files /dev/null and b/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.hu.png differ
diff --git a/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.sw.png b/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.sw.png
new file mode 100644
index 00000000..20480a22
Binary files /dev/null and b/translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.sw.png differ
diff --git a/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.cs.png b/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.cs.png
new file mode 100644
index 00000000..9d90f435
Binary files /dev/null and b/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.cs.png differ
diff --git a/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.hu.png b/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.hu.png
new file mode 100644
index 00000000..9d90f435
Binary files /dev/null and b/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.hu.png differ
diff --git a/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.sw.png b/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.sw.png
new file mode 100644
index 00000000..9d90f435
Binary files /dev/null and b/translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.sw.png differ
diff --git a/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.cs.png b/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.cs.png
new file mode 100644
index 00000000..27b0ea2c
Binary files /dev/null and b/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.cs.png differ
diff --git a/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.hu.png b/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.hu.png
new file mode 100644
index 00000000..27b0ea2c
Binary files /dev/null and b/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.hu.png differ
diff --git a/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.sw.png b/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.sw.png
new file mode 100644
index 00000000..27b0ea2c
Binary files /dev/null and b/translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.sw.png differ
diff --git a/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.cs.png b/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.cs.png
new file mode 100644
index 00000000..3526a6d0
Binary files /dev/null and b/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.cs.png differ
diff --git a/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.hu.png b/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.hu.png
new file mode 100644
index 00000000..3526a6d0
Binary files /dev/null and b/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.hu.png differ
diff --git a/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.sw.png b/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.sw.png
new file mode 100644
index 00000000..3526a6d0
Binary files /dev/null and b/translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.sw.png differ
diff --git a/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.cs.png b/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.cs.png
new file mode 100644
index 00000000..855d442e
Binary files /dev/null and b/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.cs.png differ
diff --git a/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.hu.png b/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.hu.png
new file mode 100644
index 00000000..855d442e
Binary files /dev/null and b/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.hu.png differ
diff --git a/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.sw.png b/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.sw.png
new file mode 100644
index 00000000..855d442e
Binary files /dev/null and b/translated_images/vscode-virtual-env.8ba42e04c3d533cf677e16cbe5ed9a3b80f62c6964472dc84b6f940800f0909f.sw.png differ
diff --git a/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.cs.png b/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.cs.png
new file mode 100644
index 00000000..aed3d813
Binary files /dev/null and b/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.cs.png differ
diff --git a/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.hu.png b/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.hu.png
new file mode 100644
index 00000000..aed3d813
Binary files /dev/null and b/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.hu.png differ
diff --git a/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.sw.png b/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.sw.png
new file mode 100644
index 00000000..aed3d813
Binary files /dev/null and b/translated_images/what-is-azure-video-thumbnail.20174db09e03bbb87d213f928d3cb27410305d2e567e952827de8478dbda959b.sw.png differ
diff --git a/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.cs.png b/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.cs.png
new file mode 100644
index 00000000..9bfca6c2
Binary files /dev/null and b/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.cs.png differ
diff --git a/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.hu.png b/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.hu.png
new file mode 100644
index 00000000..9bfca6c2
Binary files /dev/null and b/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.hu.png differ
diff --git a/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.sw.png b/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.sw.png
new file mode 100644
index 00000000..9bfca6c2
Binary files /dev/null and b/translated_images/wio-gps-sensor.19fd52b81ce58095d5deb3d4e5a1fdd88818d76569b00b1f0d740c92dc986525.sw.png differ
diff --git a/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.cs.png b/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.cs.png
new file mode 100644
index 00000000..0490e302
Binary files /dev/null and b/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.cs.png differ
diff --git a/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.hu.png b/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.hu.png
new file mode 100644
index 00000000..0490e302
Binary files /dev/null and b/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.hu.png differ
diff --git a/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.sw.png b/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.sw.png
new file mode 100644
index 00000000..0490e302
Binary files /dev/null and b/translated_images/wio-hardware-kit.4c70c48b85e4283a1d73e248d87d49587c0cd077eeb69cb3eca803166f63c9a5.sw.png differ
diff --git a/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.cs.png b/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.cs.png
new file mode 100644
index 00000000..676e2378
Binary files /dev/null and b/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.cs.png differ
diff --git a/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.hu.png b/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.hu.png
new file mode 100644
index 00000000..676e2378
Binary files /dev/null and b/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.hu.png differ
diff --git a/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.sw.png b/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.sw.png
new file mode 100644
index 00000000..676e2378
Binary files /dev/null and b/translated_images/wio-led.265a1897e72d7f21c753257516a4b677d8e30ce2b95fee98189458b3275ba0a6.sw.png differ
diff --git a/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.cs.png b/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.cs.png
new file mode 100644
index 00000000..280e18c3
Binary files /dev/null and b/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.cs.png differ
diff --git a/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.hu.png b/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.hu.png
new file mode 100644
index 00000000..280e18c3
Binary files /dev/null and b/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.hu.png differ
diff --git a/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.sw.png b/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.sw.png
new file mode 100644
index 00000000..280e18c3
Binary files /dev/null and b/translated_images/wio-light-sensor.b1f529f3c95f51654f2e2c1d2d4b55fe547d189f588c974f5c2462c728133840.sw.png differ
diff --git a/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.cs.png b/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.cs.png
new file mode 100644
index 00000000..bb70a905
Binary files /dev/null and b/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.cs.png differ
diff --git a/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.hu.png b/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.hu.png
new file mode 100644
index 00000000..bb70a905
Binary files /dev/null and b/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.hu.png differ
diff --git a/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.sw.png b/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.sw.png
new file mode 100644
index 00000000..bb70a905
Binary files /dev/null and b/translated_images/wio-mic.3f8c843dbe8ad917424037a93e3d25c62634add00a04dd8e091317b5a7a90088.sw.png differ
diff --git a/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.cs.png b/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.cs.png
new file mode 100644
index 00000000..c0860d6e
Binary files /dev/null and b/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.cs.png differ
diff --git a/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.hu.png b/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.hu.png
new file mode 100644
index 00000000..c0860d6e
Binary files /dev/null and b/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.hu.png differ
diff --git a/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.sw.png b/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.sw.png
new file mode 100644
index 00000000..c0860d6e
Binary files /dev/null and b/translated_images/wio-relay-and-soil-moisture-sensor.ed722202d42babe0be5f4518cf13e8c2c81e8df21d37839266cbdb60cf30172d.sw.png differ
diff --git a/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.cs.png b/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.cs.png
new file mode 100644
index 00000000..9a34d708
Binary files /dev/null and b/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.cs.png differ
diff --git a/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.hu.png b/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.hu.png
new file mode 100644
index 00000000..9a34d708
Binary files /dev/null and b/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.hu.png differ
diff --git a/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.sw.png b/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.sw.png
new file mode 100644
index 00000000..9a34d708
Binary files /dev/null and b/translated_images/wio-respeaker-hat.bd54917d446e6f6f142f9371ea52c12fd708873986bf46191208a151cd929bad.sw.png differ
diff --git a/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.cs.png b/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.cs.png
new file mode 100644
index 00000000..2c683d8b
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.cs.png differ
diff --git a/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.hu.png b/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.hu.png
new file mode 100644
index 00000000..2c683d8b
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.hu.png differ
diff --git a/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.sw.png b/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.sw.png
new file mode 100644
index 00000000..2c683d8b
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-0.767f80aa6508103880d256cdf99ee7219e190db257c7261e4aec219759dc67b9.sw.png differ
diff --git a/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.cs.png b/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.cs.png
new file mode 100644
index 00000000..1ba4c5b0
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.cs.png differ
diff --git a/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.hu.png b/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.hu.png
new file mode 100644
index 00000000..1ba4c5b0
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.hu.png differ
diff --git a/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.sw.png b/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.sw.png
new file mode 100644
index 00000000..1ba4c5b0
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-1.8d894727f2ba24004824ee5e06b83b6d10952550003a3efb603182121521b0ef.sw.png differ
diff --git a/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.cs.png b/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.cs.png
new file mode 100644
index 00000000..93aa3743
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.cs.png differ
diff --git a/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.hu.png b/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.hu.png
new file mode 100644
index 00000000..93aa3743
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.hu.png differ
diff --git a/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.sw.png b/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.sw.png
new file mode 100644
index 00000000..93aa3743
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-2.329e1cbd306e754f8ffe56f9294794f4a8fa123860d76067a79e9ea385d1bf56.sw.png differ
diff --git a/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.cs.png b/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.cs.png
new file mode 100644
index 00000000..3089e5e1
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.cs.png differ
diff --git a/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.hu.png b/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.hu.png
new file mode 100644
index 00000000..3089e5e1
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.hu.png differ
diff --git a/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.sw.png b/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.sw.png
new file mode 100644
index 00000000..3089e5e1
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-3.75b0be447e2fa9307a6a954f9ae8a71b77e39ada6a5ef1a059d341dc850fd90c.sw.png differ
diff --git a/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.cs.png b/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.cs.png
new file mode 100644
index 00000000..53468420
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.cs.png differ
diff --git a/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.hu.png b/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.hu.png
new file mode 100644
index 00000000..53468420
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.hu.png differ
diff --git a/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.sw.png b/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.sw.png
new file mode 100644
index 00000000..53468420
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-4.aa9cd434d8779437de720cba2719d83992413caed1b620b6148f6c8924889afb.sw.png differ
diff --git a/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.cs.png b/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.cs.png
new file mode 100644
index 00000000..003dc174
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.cs.png differ
diff --git a/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.hu.png b/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.hu.png
new file mode 100644
index 00000000..003dc174
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.hu.png differ
diff --git a/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.sw.png b/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.sw.png
new file mode 100644
index 00000000..003dc174
Binary files /dev/null and b/translated_images/wio-respeaker-wiring-5.af117c20acf622f3cd656ccd8f4053f8845d6aaa3af164d24cb7dbd54a4bb470.sw.png differ
diff --git a/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.cs.png b/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.cs.png
new file mode 100644
index 00000000..3c0d2f87
Binary files /dev/null and b/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.cs.png differ
diff --git a/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.hu.png b/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.hu.png
new file mode 100644
index 00000000..3c0d2f87
Binary files /dev/null and b/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.hu.png differ
diff --git a/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.sw.png b/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.sw.png
new file mode 100644
index 00000000..3c0d2f87
Binary files /dev/null and b/translated_images/wio-sd-card.acdcbe322fa4ee7f8f9c8cc015b3263964bb26ab5c7e25b41747988cc5280d64.sw.png differ
diff --git a/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.cs.png b/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.cs.png
new file mode 100644
index 00000000..56f285f2
Binary files /dev/null and b/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.cs.png differ
diff --git a/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.hu.png b/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.hu.png
new file mode 100644
index 00000000..56f285f2
Binary files /dev/null and b/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.hu.png differ
diff --git a/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.sw.png b/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.sw.png
new file mode 100644
index 00000000..56f285f2
Binary files /dev/null and b/translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.sw.png differ
diff --git a/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.cs.png b/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.cs.png
new file mode 100644
index 00000000..ec8bbe2f
Binary files /dev/null and b/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.cs.png differ
diff --git a/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.hu.png b/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.hu.png
new file mode 100644
index 00000000..ec8bbe2f
Binary files /dev/null and b/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.hu.png differ
diff --git a/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.sw.png b/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.sw.png
new file mode 100644
index 00000000..ec8bbe2f
Binary files /dev/null and b/translated_images/wio-temperature-sensor.2934928f38c7f79a68d24879d2c8986c78244696f931e2e33c293f426ecdc0ad.sw.png differ
diff --git a/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.cs.png b/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.cs.png
new file mode 100644
index 00000000..bbaae894
Binary files /dev/null and b/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.cs.png differ
diff --git a/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.hu.png b/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.hu.png
new file mode 100644
index 00000000..bbaae894
Binary files /dev/null and b/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.hu.png differ
diff --git a/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.sw.png b/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.sw.png
new file mode 100644
index 00000000..bbaae894
Binary files /dev/null and b/translated_images/wio-terminal-c-button.73df3cb1c1445ea07ee98316af0e7925fcb43135df0abed58d3d4822b2589c3b.sw.png differ
diff --git a/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.cs.png b/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.cs.png
new file mode 100644
index 00000000..ef71f6da
Binary files /dev/null and b/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.cs.png differ
diff --git a/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.hu.png b/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.hu.png
new file mode 100644
index 00000000..ef71f6da
Binary files /dev/null and b/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.hu.png differ
diff --git a/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.sw.png b/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.sw.png
new file mode 100644
index 00000000..ef71f6da
Binary files /dev/null and b/translated_images/wio-terminal-pin-sticker.b90b1535937b84bd00d853f0004aea74fac2aec04b43f14b887796b2633f855e.sw.png differ
diff --git a/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.cs.png b/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.cs.png
new file mode 100644
index 00000000..4e9390eb
Binary files /dev/null and b/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.cs.png differ
diff --git a/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.hu.png b/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.hu.png
new file mode 100644
index 00000000..4e9390eb
Binary files /dev/null and b/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.hu.png differ
diff --git a/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.sw.png b/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.sw.png
new file mode 100644
index 00000000..4e9390eb
Binary files /dev/null and b/translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.sw.png differ
diff --git a/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.cs.png b/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.cs.png
new file mode 100644
index 00000000..16d7af80
Binary files /dev/null and b/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.cs.png differ
diff --git a/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.hu.png b/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.hu.png
new file mode 100644
index 00000000..16d7af80
Binary files /dev/null and b/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.hu.png differ
diff --git a/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.sw.png b/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.sw.png
new file mode 100644
index 00000000..16d7af80
Binary files /dev/null and b/translated_images/wio-time-of-flight-sensor.c4c182131d2ea73df67febd004dc0313d271013d016be9c47e7da4d77c6c20a8.sw.png differ
diff --git a/translations/cs/1-getting-started/README.md b/translations/cs/1-getting-started/README.md
new file mode 100644
index 00000000..5454c55f
--- /dev/null
+++ b/translations/cs/1-getting-started/README.md
@@ -0,0 +1,30 @@
+
+# Začínáme s IoT
+
+V této části kurzu budete seznámeni s Internetem věcí (IoT) a naučíte se základní koncepty, včetně vytvoření svého prvního projektu 'Hello World' IoT, který se připojuje ke cloudu. Tento projekt je noční světlo, které se rozsvítí, když úroveň světla měřená senzorem klesne.
+
+
+
+## Témata
+
+1. [Úvod do IoT](lessons/1-introduction-to-iot/README.md)
+1. [Podrobnější pohled na IoT](lessons/2-deeper-dive/README.md)
+1. [Interakce s fyzickým světem pomocí senzorů a akčních členů](lessons/3-sensors-and-actuators/README.md)
+1. [Připojení vašeho zařízení k internetu](lessons/4-connect-internet/README.md)
+
+## Poděkování
+
+Všechny lekce byly napsány s ♥️ od [Jim Bennett](https://GitHub.com/JimBobBennett)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/1-introduction-to-iot/README.md b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/README.md
new file mode 100644
index 00000000..74d693fd
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/README.md
@@ -0,0 +1,242 @@
+
+# Úvod do IoT
+
+
+
+> Sketchnote vytvořil [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+Tato lekce byla součástí série [Hello IoT](https://youtube.com/playlist?list=PLmsFUfdnGr3xRts0TIwyaHyQuHaNQcb6-) od [Microsoft Reactor](https://developer.microsoft.com/reactor/?WT.mc_id=academic-17441-jabenn). Lekce byla rozdělena do dvou videí - hodinové lekce a hodinového "office hour", kde se podrobněji probíraly části lekce a odpovídalo se na otázky.
+
+[](https://youtu.be/bVFfcYh6UBw)
+
+[](https://youtu.be/YI772q5v3yI)
+
+> 🎥 Klikněte na obrázky výše pro zhlédnutí videí
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/1)
+
+## Úvod
+
+Tato lekce pokrývá některá úvodní témata týkající se Internetu věcí (IoT) a pomůže vám začít s nastavením vašeho hardwaru.
+
+V této lekci se zaměříme na:
+
+* [Co je 'Internet věcí'?](../../../../../1-getting-started/lessons/1-introduction-to-iot)
+* [IoT zařízení](../../../../../1-getting-started/lessons/1-introduction-to-iot)
+* [Nastavení vašeho zařízení](../../../../../1-getting-started/lessons/1-introduction-to-iot)
+* [Aplikace IoT](../../../../../1-getting-started/lessons/1-introduction-to-iot)
+* [Příklady IoT zařízení, která můžete mít kolem sebe](../../../../../1-getting-started/lessons/1-introduction-to-iot)
+
+## Co je 'Internet věcí'?
+
+Termín 'Internet věcí' byl poprvé použit [Kevinem Ashtonem](https://wikipedia.org/wiki/Kevin_Ashton) v roce 1999, aby popsal propojení internetu s fyzickým světem prostřednictvím senzorů. Od té doby se tento termín používá k označení jakéhokoliv zařízení, které interaguje s fyzickým světem kolem sebe, buď sběrem dat ze senzorů, nebo poskytováním reálných interakcí prostřednictvím aktuátorů (zařízení, která něco dělají, například zapínají spínač nebo rozsvěcují LED), obvykle připojených k jiným zařízením nebo internetu.
+
+> **Senzory** shromažďují informace ze světa, například měří rychlost, teplotu nebo polohu.
+>
+> **Aktuátory** převádějí elektrické signály na reálné interakce, jako je aktivace spínače, rozsvícení světel, vydávání zvuků nebo odesílání řídicích signálů jinému hardwaru, například k zapnutí elektrické zásuvky.
+
+IoT jako technologická oblast zahrnuje více než jen zařízení - zahrnuje cloudové služby, které mohou zpracovávat data ze senzorů nebo odesílat požadavky aktuátorům připojeným k IoT zařízením. Zahrnuje také zařízení, která nemají nebo nepotřebují připojení k internetu, často označovaná jako edge zařízení. Tato zařízení mohou sama zpracovávat a reagovat na data ze senzorů, obvykle pomocí AI modelů trénovaných v cloudu.
+
+IoT je rychle rostoucí technologická oblast. Odhaduje se, že do konce roku 2020 bylo nasazeno a připojeno k internetu 30 miliard IoT zařízení. Do budoucna se odhaduje, že do roku 2025 budou IoT zařízení shromažďovat téměř 80 zettabytů dat, což je 80 bilionů gigabajtů. To je obrovské množství dat!
+
+
+
+✅ Udělejte si malý průzkum: Kolik dat generovaných IoT zařízeními je skutečně využito a kolik je zbytečných? Proč je tolik dat ignorováno?
+
+Tato data jsou klíčem k úspěchu IoT. Abyste byli úspěšným IoT vývojářem, musíte pochopit, jaká data potřebujete shromažďovat, jak je shromažďovat, jak na jejich základě činit rozhodnutí a jak tato rozhodnutí použít k interakci s fyzickým světem, pokud je to potřeba.
+
+## IoT zařízení
+
+**T** v IoT znamená **Things** - zařízení, která interagují s fyzickým světem kolem sebe buď sběrem dat ze senzorů, nebo poskytováním reálných interakcí prostřednictvím aktuátorů.
+
+Zařízení pro produkční nebo komerční použití, jako jsou spotřebitelské fitness trackery nebo průmyslové řídicí jednotky strojů, jsou obvykle vyráběna na míru. Používají vlastní obvodové desky, možná i vlastní procesory, navržené tak, aby splňovaly požadavky konkrétního úkolu, ať už jde o dostatečně malou velikost, aby se vešla na zápěstí, nebo o odolnost vůči vysokým teplotám, stresu nebo vibracím v továrním prostředí.
+
+Jako vývojář, který se učí o IoT nebo vytváří prototyp zařízení, budete potřebovat vývojářskou sadu. Tyto sady jsou univerzální IoT zařízení navržená pro vývojáře, často s funkcemi, které byste na produkčním zařízení neměli, jako jsou externí piny pro připojení senzorů nebo aktuátorů, hardware pro podporu ladění nebo další zdroje, které by při velké výrobní sérii zbytečně zvyšovaly náklady.
+
+Tyto vývojářské sady obvykle spadají do dvou kategorií - mikrokontroléry a jednodeskové počítače. Ty budou představeny zde, a podrobněji se jim budeme věnovat v další lekci.
+
+> 💁 Váš telefon může být také považován za univerzální IoT zařízení, s vestavěnými senzory a aktuátory, přičemž různé aplikace využívají senzory a aktuátory různými způsoby s různými cloudovými službami. Dokonce můžete najít některé IoT tutoriály, které používají aplikaci v telefonu jako IoT zařízení.
+
+### Mikrokontroléry
+
+Mikrokontrolér (také označovaný jako MCU, což je zkratka pro microcontroller unit) je malý počítač skládající se z:
+
+🧠 Jednoho nebo více centrálních procesorových jednotek (CPU) - "mozku" mikrokontroléru, který spouští váš program
+
+💾 Paměti (RAM a programové paměti) - kde je uložen váš program, data a proměnné
+
+🔌 Programovatelných vstupních/výstupních (I/O) připojení - pro komunikaci s externími periferiemi (připojenými zařízeními), jako jsou senzory a aktuátory
+
+Mikrokontroléry jsou obvykle nízkonákladová výpočetní zařízení, přičemž průměrné ceny těch, které se používají v zakázkovém hardwaru, klesají na přibližně 0,50 USD, a některá zařízení jsou tak levná jako 0,03 USD. Vývojářské sady mohou začínat na ceně 4 USD, přičemž náklady rostou s přidáváním dalších funkcí. [Wio Terminal](https://www.seeedstudio.com/Wio-Terminal-p-4509.html), vývojářská sada mikrokontroléru od [Seeed studios](https://www.seeedstudio.com), která má senzory, aktuátory, WiFi a obrazovku, stojí přibližně 30 USD.
+
+
+
+> 💁 Při hledání mikrokontrolérů na internetu buďte opatrní při hledání termínu **MCU**, protože vám to může přinést mnoho výsledků týkajících se Marvel Cinematic Universe, nikoliv mikrokontrolérů.
+
+Mikrokontroléry jsou navrženy tak, aby byly programovány pro omezený počet velmi specifických úkolů, spíše než aby byly univerzálními počítači jako PC nebo Mac. Kromě velmi specifických scénářů k nim nemůžete připojit monitor, klávesnici a myš a používat je pro obecné úkoly.
+
+Vývojářské sady mikrokontrolérů obvykle přicházejí s dalšími vestavěnými senzory a aktuátory. Většina desek bude mít jeden nebo více LED diod, které můžete programovat, spolu s dalšími zařízeními, jako jsou standardní konektory pro přidávání dalších senzorů nebo aktuátorů pomocí různých ekosystémů výrobců nebo vestavěné senzory (obvykle ty nejoblíbenější, jako jsou teplotní senzory). Některé mikrokontroléry mají vestavěnou bezdrátovou konektivitu, jako je Bluetooth nebo WiFi, nebo mají na desce další mikrokontroléry, které tuto konektivitu přidávají.
+
+> 💁 Mikrokontroléry se obvykle programují v jazyce C/C++.
+
+### Jednodeskové počítače
+
+Jednodeskový počítač je malé výpočetní zařízení, které má všechny prvky kompletního počítače obsažené na jedné malé desce. Tato zařízení mají specifikace blízké stolnímu nebo přenosnému PC nebo Macu, běží na plnohodnotném operačním systému, ale jsou malá, spotřebovávají méně energie a jsou podstatně levnější.
+
+
+
+Raspberry Pi je jedním z nejoblíbenějších jednodeskových počítačů.
+
+Stejně jako mikrokontrolér mají jednodeskové počítače CPU, paměť a vstupní/výstupní piny, ale mají další funkce, jako je grafický čip umožňující připojení monitorů, audio výstupy a USB porty pro připojení klávesnic, myší a dalších standardních USB zařízení, jako jsou webkamery nebo externí úložiště. Programy jsou ukládány na SD karty nebo pevné disky spolu s operačním systémem, místo paměťového čipu vestavěného do desky.
+
+> 🎓 Jednodeskový počítač si můžete představit jako menší, levnější verzi PC nebo Macu, na kterém právě čtete tento text, s přidanými GPIO (general-purpose input/output) piny pro interakci se senzory a aktuátory.
+
+Jednodeskové počítače jsou plnohodnotné počítače, takže je lze programovat v jakémkoliv jazyce. IoT zařízení se obvykle programují v Pythonu.
+
+### Výběr hardwaru pro další lekce
+
+Všechny následující lekce zahrnují úkoly využívající IoT zařízení k interakci s fyzickým světem a komunikaci s cloudem. Každá lekce podporuje 3 možnosti zařízení - Arduino (s využitím Seeed Studios Wio Terminal), nebo jednodeskový počítač, buď fyzické zařízení (Raspberry Pi 4) nebo virtuální jednodeskový počítač běžící na vašem PC nebo Macu.
+
+Můžete si přečíst o hardwaru potřebném k dokončení všech úkolů v [průvodci hardwarem](../../../hardware.md).
+
+> 💁 Nemusíte si kupovat žádný IoT hardware, abyste mohli dokončit úkoly, vše můžete provést pomocí virtuálního jednodeskového počítače.
+
+Výběr hardwaru závisí na vás - záleží na tom, co máte k dispozici doma nebo ve škole, a jaký programovací jazyk znáte nebo se plánujete naučit. Obě varianty hardwaru budou používat stejný ekosystém senzorů, takže pokud začnete jednou cestou, můžete přejít na druhou, aniž byste museli vyměnit většinu vybavení. Virtuální jednodeskový počítač bude ekvivalentem učení na Raspberry Pi, přičemž většina kódu bude přenositelná na Pi, pokud si nakonec pořídíte zařízení a senzory.
+
+### Arduino vývojářská sada
+
+Pokud vás zajímá vývoj mikrokontrolérů, můžete úkoly dokončit pomocí zařízení Arduino. Budete potřebovat základní znalosti programování v C/C++, protože lekce budou učit pouze kód relevantní pro Arduino framework, senzory a aktuátory, které se používají, a knihovny, které interagují s cloudem.
+
+Úkoly budou využívat [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-17441-jabenn) s [PlatformIO rozšířením pro vývoj mikrokontrolérů](https://platformio.org). Můžete také použít Arduino IDE, pokud máte s tímto nástrojem zkušenosti, protože instrukce nebudou poskytovány.
+
+### Jednodeskový počítač vývojářská sada
+
+Pokud vás zajímá vývoj IoT pomocí jednodeskových počítačů, můžete úkoly dokončit pomocí Raspberry Pi nebo virtuálního zařízení běžícího na vašem PC nebo Macu.
+
+Budete potřebovat základní znalosti programování v Pythonu, protože lekce budou učit pouze kód relevantní pro senzory a aktuátory, které se používají, a knihovny, které interagují s cloudem.
+
+> 💁 Pokud se chcete naučit programovat v Pythonu, podívejte se na následující dvě série videí:
+>
+> * [Python pro začátečníky](https://channel9.msdn.com/Series/Intro-to-Python-Development?WT.mc_id=academic-17441-jabenn)
+> * [Více Pythonu pro začátečníky](https://channel9.msdn.com/Series/More-Python-for-Beginners?WT.mc_id=academic-7372-jabenn)
+
+Úkoly budou využívat [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-17441-jabenn).
+
+Pokud používáte Raspberry Pi, můžete buď spustit Pi pomocí plné desktopové verze Raspberry Pi OS a provádět veškeré kódování přímo na Pi pomocí [verze VS Code pro Raspberry Pi OS](https://code.visualstudio.com/docs/setup/raspberry-pi?WT.mc_id=academic-17441-jabenn), nebo spustit Pi jako zařízení bez monitoru a kódovat z vašeho PC nebo Macu pomocí VS Code s [Remote SSH rozšířením](https://code.visualstudio.com/docs/remote/ssh?WT.mc_id=academic-17441-jabenn), které vám umožní připojit se k Pi a upravovat, ladit a spouštět kód, jako byste kódovali přímo na něm.
+
+Pokud použijete možnost virtuálního zařízení, budete kódovat přímo na vašem počítači. Místo přístupu k senzorům a aktuátorům budete používat nástroj k simulaci tohoto hardwaru, který poskytuje hodnoty senzorů, které můžete definovat, a zobrazuje výsledky aktuátorů na obrazovce.
+
+## Nastavení vašeho zařízení
+
+Než začnete programovat vaše IoT zařízení, budete muset provést malé množství nastavení. Postupujte podle relevantních instrukcí níže v závislosti na tom, které zařízení budete používat.
+💁 Pokud ještě nemáte zařízení, podívejte se na [průvodce hardwarem](../../../hardware.md), který vám pomůže rozhodnout, jaké zařízení budete používat a jaký další hardware je třeba zakoupit. Není nutné kupovat hardware, protože všechny projekty lze spustit na virtuálním hardwaru.
+Tyto pokyny zahrnují odkazy na webové stránky třetích stran od tvůrců hardwaru nebo nástrojů, které budete používat. To má zajistit, že vždy budete mít nejaktuálnější pokyny pro různé nástroje a hardware.
+
+Projděte si příslušný průvodce, nastavte své zařízení a dokončete projekt „Hello World“. To bude první krok při vytváření IoT nočního světla během 4 lekcí v této úvodní části.
+
+* [Arduino - Wio Terminal](wio-terminal.md)
+* [Jednodeskový počítač - Raspberry Pi](pi.md)
+* [Jednodeskový počítač - Virtuální zařízení](virtual-device.md)
+
+✅ Budete používat VS Code jak pro Arduino, tak pro jednodeskové počítače. Pokud jste ho dosud nepoužívali, přečtěte si více na [webu VS Code](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn).
+
+## Aplikace IoT
+
+IoT pokrývá širokou škálu použití, rozdělených do několika hlavních skupin:
+
+* Spotřebitelské IoT
+* Komerční IoT
+* Průmyslové IoT
+* IoT pro infrastrukturu
+
+✅ Udělejte si malý průzkum: Pro každou z níže popsaných oblastí najděte jeden konkrétní příklad, který není uveden v textu.
+
+### Spotřebitelské IoT
+
+Spotřebitelské IoT se týká IoT zařízení, která si spotřebitelé kupují a používají doma. Některá z těchto zařízení jsou neuvěřitelně užitečná, jako například chytré reproduktory, chytré topné systémy a robotické vysavače. Jiná jsou sporná, co se týče jejich užitečnosti, například hlasem ovládané kohoutky, které pak nelze vypnout, protože hlasové ovládání vás neslyší přes zvuk tekoucí vody.
+
+Spotřebitelská IoT zařízení umožňují lidem dosáhnout více ve svém okolí, zejména 1 miliardě lidí, kteří mají nějaké postižení. Robotické vysavače mohou zajistit čisté podlahy lidem s omezenou pohyblivostí, kteří si nemohou sami vysávat. Hlasem ovládané trouby umožňují lidem s omezeným zrakem nebo motorickou kontrolou zapnout troubu pouze hlasem. Zdravotní monitory umožňují pacientům sledovat chronické stavy s pravidelnějšími a podrobnějšími aktualizacemi jejich zdravotního stavu. Tato zařízení se stávají tak běžnými, že je dokonce používají i malé děti jako součást svého každodenního života, například studenti, kteří během pandemie COVID využívali chytrá domácí zařízení k nastavování časovačů na školní úkoly nebo alarmů, aby si připomněli nadcházející online hodiny.
+
+✅ Jaká spotřebitelská IoT zařízení máte u sebe nebo doma?
+
+### Komerční IoT
+
+Komerční IoT zahrnuje použití IoT na pracovišti. V kancelářském prostředí mohou být přítomnostní senzory a detektory pohybu využívány k řízení osvětlení a vytápění, aby se světla a topení zapínaly pouze tehdy, když jsou potřeba, což snižuje náklady a emise uhlíku. Ve výrobním závodě mohou IoT zařízení monitorovat bezpečnostní rizika, například pracovníky bez ochranných přileb nebo hluk, který dosáhl nebezpečné úrovně. V maloobchodě mohou IoT zařízení měřit teplotu chladicích zařízení a upozornit majitele obchodu, pokud lednice nebo mrazák překročí požadovaný teplotní rozsah, nebo mohou monitorovat položky na regálech a nasměrovat zaměstnance k doplnění vyprodaného zboží. Dopravní průmysl stále více spoléhá na IoT k monitorování polohy vozidel, sledování ujetých kilometrů na silnici pro účely zpoplatnění, sledování dodržování přestávek řidičů nebo upozorňování personálu, když se vozidlo blíží k depu, aby se připravilo na nakládku nebo vykládku.
+
+✅ Jaká komerční IoT zařízení máte ve škole nebo na pracovišti?
+
+### Průmyslové IoT (IIoT)
+
+Průmyslové IoT, nebo IIoT, je použití IoT zařízení k řízení a správě strojů ve velkém měřítku. To zahrnuje širokou škálu použití, od továren po digitální zemědělství.
+
+Továrny používají IoT zařízení mnoha různými způsoby. Stroje mohou být monitorovány pomocí více senzorů, které sledují například teplotu, vibrace a rychlost otáčení. Tato data mohou být sledována, aby bylo možné stroj zastavit, pokud překročí určité tolerance – například pokud se příliš zahřeje, může být automaticky vypnut. Tato data mohou být také shromažďována a analyzována v průběhu času pro prediktivní údržbu, kdy modely AI analyzují data vedoucí k poruše a používají je k předpovědi dalších poruch před jejich výskytem.
+
+Digitální zemědělství je důležité, pokud má planeta uživit rostoucí populaci, zejména 2 miliardy lidí v 500 milionech domácností, které přežívají na [subsistenčním zemědělství](https://wikipedia.org/wiki/Subsistence_agriculture). Digitální zemědělství může zahrnovat od několika levných senzorů až po rozsáhlé komerční systémy. Farmář může začít sledováním teplot a využíváním [stupňů růstu](https://wikipedia.org/wiki/Growing_degree-day) k předpovědi, kdy bude plodina připravena ke sklizni. Může připojit monitorování vlhkosti půdy k automatizovaným zavlažovacím systémům, aby rostlinám dodal tolik vody, kolik potřebují, ale ne více, čímž zajistí, že plodiny nevyschnou, aniž by se plýtvalo vodou. Farmáři dokonce jdou ještě dál a používají drony, satelitní data a AI k monitorování růstu plodin, nemocí a kvality půdy na obrovských plochách zemědělské půdy.
+
+✅ Jaká další IoT zařízení by mohla pomoci farmářům?
+
+### IoT pro infrastrukturu
+
+IoT pro infrastrukturu zahrnuje monitorování a řízení místní i globální infrastruktury, kterou lidé používají každý den.
+
+[Chytrá města](https://wikipedia.org/wiki/Smart_city) jsou městské oblasti, které využívají IoT zařízení ke sběru dat o městě a jejich využití ke zlepšení fungování města. Tato města jsou obvykle řízena spoluprací mezi místními vládami, akademickou sférou a místními podniky, sledují a spravují různé aspekty od dopravy po parkování a znečištění. Například v Kodani, Dánsku, je znečištění ovzduší důležité pro místní obyvatele, takže se měří a data se používají k poskytování informací o nejčistších trasách pro cyklistiku a jogging.
+
+[Chytré elektrické sítě](https://wikipedia.org/wiki/Smart_grid) umožňují lepší analýzu poptávky po elektřině díky sběru údajů o spotřebě na úrovni jednotlivých domácností. Tato data mohou vést k rozhodnutím na úrovni země, například kde postavit nové elektrárny, a na osobní úrovni poskytovat uživatelům přehled o tom, kolik energie spotřebovávají, kdy ji spotřebovávají, a dokonce návrhy, jak snížit náklady, například nabíjením elektrických aut v noci.
+
+✅ Pokud byste mohli přidat IoT zařízení k měření čehokoli ve vašem okolí, co by to bylo?
+
+## Příklady IoT zařízení, která můžete mít kolem sebe
+
+Byli byste překvapeni, kolik IoT zařízení máte kolem sebe. Píšu to z domova a mám následující zařízení připojená k internetu s chytrými funkcemi, jako je ovládání aplikací, hlasové ovládání nebo schopnost posílat data na můj telefon:
+
+* Více chytrých reproduktorů
+* Lednice, myčka, trouba a mikrovlnná trouba
+* Monitor elektřiny pro solární panely
+* Chytré zásuvky
+* Videozvonek a bezpečnostní kamery
+* Chytrý termostat s více chytrými senzory v místnostech
+* Otevírač garážových vrat
+* Domácí zábavní systémy a hlasem ovládané televize
+* Světla
+* Fitness a zdravotní trackery
+
+Všechna tato zařízení mají senzory a/nebo akční členy a komunikují s internetem. Mohu ze svého telefonu zjistit, zda jsou garážová vrata otevřená, a požádat chytrý reproduktor, aby je zavřel. Mohu je dokonce nastavit na časovač, aby se automaticky zavřela, pokud zůstanou otevřená přes noc. Když zazvoní zvonek, mohu ze svého telefonu vidět, kdo je u dveří, a mluvit s nimi prostřednictvím reproduktoru a mikrofonu zabudovaného do zvonku. Mohu sledovat hladinu glukózy v krvi, srdeční tep a spánkové vzorce, hledat vzorce v datech a zlepšovat své zdraví. Mohu ovládat světla přes cloud a sedět ve tmě, když mi vypadne internetové připojení.
+
+---
+
+## 🚀 Výzva
+
+Vyjmenujte co nejvíce IoT zařízení, která máte doma, ve škole nebo na pracovišti – možná jich je více, než si myslíte!
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/2)
+
+## Přehled a samostudium
+
+Přečtěte si o výhodách a neúspěších projektů spotřebitelského IoT. Projděte zpravodajské weby a najděte články o případech, kdy se něco pokazilo, například problémy s ochranou soukromí, hardwarové problémy nebo problémy způsobené nedostatkem konektivity.
+
+Některé příklady:
+
+* Podívejte se na Twitter účet **[Internet of Sh*t](https://twitter.com/internetofshit)** *(varování: vulgarity)* pro dobré příklady neúspěchů spotřebitelského IoT.
+* [c|net - Můj Apple Watch mi zachránil život: 5 lidí sdílí své příběhy](https://www.cnet.com/news/apple-watch-lifesaving-health-features-read-5-peoples-stories/)
+* [c|net - Technik ADT se přiznal ke špehování zákaznických kamerových záznamů po celé roky](https://www.cnet.com/news/adt-home-security-technician-pleads-guilty-to-spying-on-customer-camera-feeds-for-years/) *(varování: nechtěné voyeurství)*
+
+## Zadání
+
+[Prozkoumejte IoT projekt](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/1-introduction-to-iot/assignment.md b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/assignment.md
new file mode 100644
index 00000000..580a4892
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/assignment.md
@@ -0,0 +1,27 @@
+
+# Prozkoumejte IoT projekt
+
+## Pokyny
+
+Po celém světě se realizuje mnoho velkých i malých IoT projektů, od chytrých farem po chytrá města, v oblasti monitorování zdravotní péče, dopravy a využití veřejných prostor.
+
+Vyhledejte na internetu podrobnosti o projektu, který vás zajímá, ideálně o takovém, který je blízko vašeho bydliště. Vysvětlete výhody a nevýhody projektu, například jaké přínosy z něj plynou, jaké problémy způsobuje a jak je zohledněno soukromí.
+
+## Hodnocení
+
+| Kritéria | Vynikající | Přiměřené | Vyžaduje zlepšení |
+| -------- | ---------- | --------- | ----------------- |
+| Vysvětlení výhod a nevýhod | Poskytl jasné vysvětlení výhod a nevýhod projektu | Poskytl stručné vysvětlení výhod a nevýhod | Nevysvětlil výhody ani nevýhody |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/1-introduction-to-iot/pi.md b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/pi.md
new file mode 100644
index 00000000..9b695d5e
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/pi.md
@@ -0,0 +1,286 @@
+
+# Raspberry Pi
+
+[Raspberry Pi](https://raspberrypi.org) je jednodeskový počítač. Můžete k němu připojit senzory a akční členy pomocí široké škály zařízení a ekosystémů. Pro tyto lekce budete používat hardwarový ekosystém nazvaný [Grove](https://www.seeedstudio.com/category/Grove-c-1003.html). Raspberry Pi budete programovat a přistupovat k senzorům Grove pomocí Pythonu.
+
+
+
+## Nastavení
+
+Pokud používáte Raspberry Pi jako své IoT zařízení, máte dvě možnosti – můžete projít všechny tyto lekce a programovat přímo na Pi, nebo se můžete připojit vzdáleně k „bezhlavému“ Pi a programovat z vašeho počítače.
+
+Než začnete, musíte také připojit Grove Base Hat k vašemu Pi.
+
+### Úkol - nastavení
+
+Nainstalujte Grove Base Hat na vaše Pi a nakonfigurujte Pi.
+
+1. Připojte Grove Base Hat k vašemu Pi. Zásuvka na hatu se nasazuje na všechny GPIO piny na Pi a zasune se až dolů, aby pevně seděla na základně. Hat zakrývá Pi.
+
+ 
+
+1. Rozhodněte se, jak chcete programovat své Pi, a přejděte do příslušné sekce níže:
+
+ * [Práce přímo na vašem Pi](../../../../../1-getting-started/lessons/1-introduction-to-iot)
+ * [Vzdálený přístup k programování Pi](../../../../../1-getting-started/lessons/1-introduction-to-iot)
+
+### Práce přímo na vašem Pi
+
+Pokud chcete pracovat přímo na vašem Pi, můžete použít desktopovou verzi Raspberry Pi OS a nainstalovat všechny potřebné nástroje.
+
+#### Úkol - práce přímo na vašem Pi
+
+Připravte své Pi pro vývoj.
+
+1. Postupujte podle pokynů v [průvodci nastavením Raspberry Pi](https://projects.raspberrypi.org/en/projects/raspberry-pi-setting-up) pro nastavení vašeho Pi, připojení klávesnice/myši/monitoru, připojení k WiFi nebo ethernetové síti a aktualizaci softwaru.
+
+Pro programování Pi pomocí senzorů a akčních členů Grove budete potřebovat nainstalovat editor pro psaní kódu zařízení a různé knihovny a nástroje pro interakci s hardwarem Grove.
+
+1. Po restartování Pi spusťte Terminál kliknutím na ikonu **Terminal** v horní liště menu nebo zvolte *Menu -> Accessories -> Terminal*.
+
+1. Spusťte následující příkaz, abyste zajistili, že OS a nainstalovaný software jsou aktuální:
+
+ ```sh
+ sudo apt update && sudo apt full-upgrade --yes
+ ```
+
+1. Spusťte následující příkazy pro instalaci všech potřebných knihoven pro hardware Grove:
+
+ ```sh
+ sudo apt install git python3-dev python3-pip --yes
+
+ git clone https://github.com/Seeed-Studio/grove.py
+ cd grove.py
+ sudo pip3 install .
+
+ sudo raspi-config nonint do_i2c 0
+ ```
+
+ Tím se nejprve nainstaluje Git spolu s Pipem pro instalaci Python balíčků.
+
+ Jednou z výhod Pythonu je možnost instalace [Pip balíčků](https://pypi.org) – což jsou balíčky kódu napsané jinými lidmi a publikované na internetu. Pip balíček můžete nainstalovat na svůj počítač jedním příkazem a poté jej použít ve svém kódu.
+
+ Python balíčky Seeed Grove je třeba nainstalovat ze zdrojového kódu. Tyto příkazy naklonují repozitář obsahující zdrojový kód tohoto balíčku a poté jej nainstalují lokálně.
+
+ > 💁 Ve výchozím nastavení, když nainstalujete balíček, je dostupný všude na vašem počítači, což může vést k problémům s verzemi balíčků – například jedna aplikace závisí na jedné verzi balíčku, která přestane fungovat, když nainstalujete novou verzi pro jinou aplikaci. Pro řešení tohoto problému můžete použít [Python virtuální prostředí](https://docs.python.org/3/library/venv.html), což je v podstatě kopie Pythonu v dedikované složce, a když instalujete Pip balíčky, instalují se pouze do této složky. Virtuální prostředí však nebudete používat na vašem Pi. Instalační skript Grove nainstaluje Python balíčky Grove globálně, takže pokud byste chtěli použít virtuální prostředí, museli byste jej nastavit a poté ručně znovu nainstalovat balíčky Grove uvnitř tohoto prostředí. Je jednodušší používat globální balíčky, zvláště protože mnoho vývojářů Pi pro každý projekt znovu flashuje čistou SD kartu.
+
+ Nakonec to povolí rozhraní I2C.
+
+1. Restartujte Pi buď pomocí menu, nebo spuštěním následujícího příkazu v Terminálu:
+
+ ```sh
+ sudo reboot
+ ```
+
+1. Po restartování Pi znovu spusťte Terminál a spusťte následující příkaz pro instalaci [Visual Studio Code (VS Code)](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn) – to je editor, který budete používat pro psaní kódu zařízení v Pythonu.
+
+ ```sh
+ sudo apt install code
+ ```
+
+ Po instalaci bude VS Code dostupný z horního menu.
+
+ > 💁 Můžete použít jakýkoliv Python IDE nebo editor, pokud máte oblíbený nástroj, ale lekce budou obsahovat pokyny založené na použití VS Code.
+
+1. Nainstalujte Pylance. Jedná se o rozšíření pro VS Code, které poskytuje podporu pro Python. Podívejte se na [dokumentaci k rozšíření Pylance](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=ms-python.vscode-pylance) pro pokyny k instalaci tohoto rozšíření ve VS Code.
+
+### Vzdálený přístup k programování Pi
+
+Místo programování přímo na Pi může běžet „bezhlavě“, tedy bez připojení klávesnice/myši/monitoru, a můžete jej konfigurovat a programovat z vašeho počítače pomocí Visual Studio Code.
+
+#### Nastavení Pi OS
+
+Pro vzdálené programování je třeba nainstalovat Pi OS na SD kartu.
+
+##### Úkol - nastavení Pi OS
+
+Nastavte bezhlavý Pi OS.
+
+1. Stáhněte si **Raspberry Pi Imager** z [stránky se softwarem Raspberry Pi OS](https://www.raspberrypi.org/software/) a nainstalujte jej.
+
+1. Vložte SD kartu do vašeho počítače, případně použijte adaptér.
+
+1. Spusťte Raspberry Pi Imager.
+
+1. V Raspberry Pi Imageru vyberte tlačítko **CHOOSE OS**, poté zvolte *Raspberry Pi OS (Other)* a následně *Raspberry Pi OS Lite (32-bit)*.
+
+ 
+
+ > 💁 Raspberry Pi OS Lite je verze Raspberry Pi OS, která neobsahuje desktopové uživatelské rozhraní ani nástroje založené na UI. Ty nejsou potřeba pro bezhlavé Pi a instalace je díky tomu menší a rychlejší.
+
+1. Vyberte tlačítko **CHOOSE STORAGE** a zvolte svou SD kartu.
+
+1. Spusťte **Advanced Options** stisknutím `Ctrl+Shift+X`. Tyto možnosti umožňují předkonfiguraci Raspberry Pi OS před jeho nahráním na SD kartu.
+
+ 1. Zaškrtněte políčko **Enable SSH** a nastavte heslo pro uživatele `pi`. Toto heslo budete později používat pro přihlášení k Pi.
+
+ 1. Pokud plánujete připojení k Pi přes WiFi, zaškrtněte políčko **Configure WiFi** a zadejte svůj WiFi SSID a heslo, stejně jako zvolte svou WiFi zemi. Toto není potřeba, pokud budete používat ethernetový kabel. Ujistěte se, že síť, ke které se připojujete, je stejná jako ta, na které je váš počítač.
+
+ 1. Zaškrtněte políčko **Set locale settings** a nastavte svou zemi a časové pásmo.
+
+ 1. Zvolte tlačítko **SAVE**.
+
+1. Zvolte tlačítko **WRITE** pro nahrání OS na SD kartu. Pokud používáte macOS, budete požádáni o zadání hesla, protože nástroj pro zápis diskových obrazů vyžaduje privilegovaný přístup.
+
+OS bude nahrán na SD kartu a po dokončení bude karta vysunuta operačním systémem a budete upozorněni. Vyjměte SD kartu z počítače, vložte ji do Pi, zapněte Pi a počkejte přibližně 2 minuty, než se správně spustí.
+
+#### Připojení k Pi
+
+Dalším krokem je vzdálený přístup k Pi. To můžete provést pomocí `ssh`, který je dostupný na macOS, Linuxu a novějších verzích Windows.
+
+##### Úkol - připojení k Pi
+
+Vzdálený přístup k Pi.
+
+1. Spusťte Terminál nebo Příkazový řádek a zadejte následující příkaz pro připojení k Pi:
+
+ ```sh
+ ssh pi@raspberrypi.local
+ ```
+
+ Pokud používáte starší verzi Windows, která nemá `ssh` nainstalovaný, můžete použít OpenSSH. Pokyny k instalaci najdete v [dokumentaci k instalaci OpenSSH](https://docs.microsoft.com//windows-server/administration/openssh/openssh_install_firstuse?WT.mc_id=academic-17441-jabenn).
+
+1. Tento příkaz by vás měl připojit k vašemu Pi a vyžádat si heslo.
+
+ Možnost najít počítače ve vaší síti pomocí `.local` je poměrně nová funkce v Linuxu a Windows. Pokud používáte Linux nebo Windows a zobrazí se vám chyby o nenalezení hostitele, budete muset nainstalovat další software pro povolení ZeroConf sítě (také označované Apple jako Bonjour):
+
+ 1. Pokud používáte Linux, nainstalujte Avahi pomocí následujícího příkazu:
+
+ ```sh
+ sudo apt-get install avahi-daemon
+ ```
+
+ 1. Pokud používáte Windows, nejjednodušší způsob, jak povolit ZeroConf, je nainstalovat [Bonjour Print Services for Windows](http://support.apple.com/kb/DL999). Můžete také nainstalovat [iTunes for Windows](https://www.apple.com/itunes/download/), abyste získali novější verzi nástroje (která není dostupná samostatně).
+
+ > 💁 Pokud se nemůžete připojit pomocí `raspberrypi.local`, můžete použít IP adresu vašeho Pi. Podívejte se na [dokumentaci k IP adrese Raspberry Pi](https://www.raspberrypi.org/documentation/remote-access/ip-address.md) pro pokyny k několika způsobům, jak získat IP adresu.
+
+1. Zadejte heslo, které jste nastavili v Advanced Options Raspberry Pi Imageru.
+
+#### Konfigurace softwaru na Pi
+
+Jakmile jste připojeni k Pi, musíte zajistit, že OS je aktuální, a nainstalovat různé knihovny a nástroje pro interakci s hardwarem Grove.
+
+##### Úkol - konfigurace softwaru na Pi
+
+Nakonfigurujte nainstalovaný software Pi a nainstalujte knihovny Grove.
+
+1. Z vaší `ssh` relace spusťte následující příkaz pro aktualizaci a poté restartování Pi:
+
+ ```sh
+ sudo apt update && sudo apt full-upgrade --yes && sudo reboot
+ ```
+
+ Pi bude aktualizováno a restartováno. `ssh` relace skončí, když se Pi restartuje, takže počkejte přibližně 30 sekund a poté se znovu připojte.
+
+1. Znovu připojené `ssh` relace spusťte následující příkazy pro instalaci všech potřebných knihoven pro hardware Grove:
+
+ ```sh
+ sudo apt install git python3-dev python3-pip --yes
+
+ git clone https://github.com/Seeed-Studio/grove.py
+ cd grove.py
+ sudo pip3 install .
+
+ sudo raspi-config nonint do_i2c 0
+ ```
+
+ Tím se nejprve nainstaluje Git spolu s Pipem pro instalaci Python balíčků.
+
+ Jednou z výhod Pythonu je možnost instalace [Pip balíčků](https://pypi.org) – což jsou balíčky kódu napsané jinými lidmi a publikované na internetu. Pip balíček můžete nainstalovat na svůj počítač jedním příkazem a poté jej použít ve svém kódu.
+
+ Python balíčky Seeed Grove je třeba nainstalovat ze zdrojového kódu. Tyto příkazy naklonují repozitář obsahující zdrojový kód tohoto balíčku a poté jej nainstalují lokálně.
+
+ > 💁 Ve výchozím nastavení, když nainstalujete balíček, je dostupný všude na vašem počítači, což může vést k problémům s verzemi balíčků – například jedna aplikace závisí na jedné verzi balíčku, která přestane fungovat, když nainstalujete novou verzi pro jinou aplikaci. Pro řešení tohoto problému můžete použít [Python virtuální prostředí](https://docs.python.org/3/library/venv.html), což je v podstatě kopie Pythonu v dedikované složce, a když instalujete Pip balíčky, instalují se pouze do této složky. Virtuální prostředí však nebudete používat na vašem Pi. Instalační skript Grove nainstaluje Python balíčky Grove globálně, takže pokud byste chtěli použít virtuální prostředí, museli byste jej nastavit a poté ručně znovu nainstalovat balíčky Grove uvnitř tohoto prostředí. Je jednodušší používat globální balíčky, zvláště protože mnoho vývojářů Pi pro každý projekt znovu flashuje čistou SD kartu.
+
+ Nakonec to povolí rozhraní I2C.
+
+1. Restartujte Pi spuštěním následujícího příkazu:
+
+ ```sh
+ sudo reboot
+ ```
+
+ `ssh` relace skončí, když se Pi restartuje. Není potřeba se znovu připojovat.
+
+#### Konfigurace VS Code pro vzdálený přístup
+
+Jakmile je Pi nakonfigurováno, můžete se k němu připojit pomocí Visual Studio Code (VS Code) z vašeho počítače – jedná se o bezplatný textový editor pro vývojáře, který budete používat pro psaní kódu zařízení v Pythonu.
+
+##### Úkol - konfigurace VS Code pro vzdálený přístup
+
+Nainstalujte potřebný software a připojte se vzdáleně k vašemu Pi.
+
+1. Nainstalujte VS Code na váš počítač podle [dokumentace VS Code](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn).
+
+1. Postupujte podle pokynů v [dokumentaci k vzdálenému vývoji pomocí SSH ve VS Code](https://code.visualstudio.com/docs/remote/ssh?WT.mc_id=academic-17441-jabenn) pro instalaci potřebných komponent.
+
+1. Podle stejných pokynů připojte VS Code k Pi.
+
+1. Jakmile jste připojeni, postupujte podle [pokynů pro správu rozšíření](https://code.visualstudio.com/docs/remote/ssh#_managing-extensions?WT.mc_id=academic-17441-jabenn) a nainstalujte [rozšíření Pylance](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=ms-python.vscode-pylance) vzdáleně na Pi.
+
+## Hello world
+Je tradiční, když začínáte s novým programovacím jazykem nebo technologií, vytvořit aplikaci 'Hello World' – malou aplikaci, která vypíše něco jako text `"Hello World"`, aby se ukázalo, že všechny nástroje jsou správně nastavené.
+
+Aplikace Hello World pro Pi zajistí, že máte správně nainstalovaný Python a Visual Studio Code.
+
+Tato aplikace bude umístěna ve složce `nightlight` a bude znovu použita s různým kódem v pozdějších částech tohoto úkolu k vytvoření aplikace nočního světla.
+
+### Úkol - hello world
+
+Vytvořte aplikaci Hello World.
+
+1. Spusťte VS Code, buď přímo na Pi, nebo na svém počítači a připojte se k Pi pomocí rozšíření Remote SSH.
+
+1. Spusťte terminál VS Code výběrem *Terminal -> New Terminal* nebo stisknutím `` CTRL+` ``. Terminál se otevře v domovském adresáři uživatele `pi`.
+
+1. Spusťte následující příkazy pro vytvoření adresáře pro váš kód a vytvoření Python souboru s názvem `app.py` uvnitř tohoto adresáře:
+
+ ```sh
+ mkdir nightlight
+ cd nightlight
+ touch app.py
+ ```
+
+1. Otevřete tuto složku ve VS Code výběrem *File -> Open...* a výběrem složky *nightlight*, poté zvolte **OK**.
+
+ 
+
+1. Otevřete soubor `app.py` z průzkumníka VS Code a přidejte následující kód:
+
+ ```python
+ print('Hello World!')
+ ```
+
+ Funkce `print` vypíše do konzole vše, co jí předáte.
+
+1. Z terminálu VS Code spusťte následující příkaz pro spuštění vaší Python aplikace:
+
+ ```sh
+ python app.py
+ ```
+
+ > 💁 Možná budete muset explicitně použít `python3` k spuštění tohoto kódu, pokud máte nainstalovaný Python 2 vedle Pythonu 3 (nejnovější verze). Pokud máte nainstalovaný Python 2, pak příkaz `python` spustí Python 2 místo Pythonu 3. Ve výchozím nastavení mají nejnovější verze Raspberry Pi OS pouze nainstalovaný Python 3.
+
+ V terminálu se objeví následující výstup:
+
+ ```output
+ pi@raspberrypi:~/nightlight $ python3 app.py
+ Hello World!
+ ```
+
+> 💁 Tento kód najdete ve složce [code/pi](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/pi).
+
+😀 Vaše 'Hello World' aplikace byla úspěšná!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/1-introduction-to-iot/virtual-device.md b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/virtual-device.md
new file mode 100644
index 00000000..ec0c647d
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/virtual-device.md
@@ -0,0 +1,245 @@
+
+# Virtuální jednodeskový počítač
+
+Místo nákupu IoT zařízení spolu se senzory a akčními členy můžete použít svůj počítač k simulaci IoT hardwaru. Projekt [CounterFit](https://github.com/CounterFit-IoT/CounterFit) vám umožňuje spustit aplikaci lokálně, která simuluje IoT hardware, jako jsou senzory a akční členy, a přistupovat k těmto senzorům a akčním členům z lokálního Python kódu napsaného stejným způsobem, jako byste psali kód pro Raspberry Pi s fyzickým hardwarem.
+
+## Nastavení
+
+Pro použití CounterFit budete muset na svém počítači nainstalovat několik bezplatných softwarů.
+
+### Úkol
+
+Nainstalujte požadovaný software.
+
+1. Nainstalujte Python. Pokyny k instalaci nejnovější verze Pythonu naleznete na [stránce ke stažení Pythonu](https://www.python.org/downloads/).
+
+1. Nainstalujte Visual Studio Code (VS Code). To je editor, který budete používat k psaní kódu pro váš virtuální hardware v Pythonu. Pokyny k instalaci VS Code naleznete v [dokumentaci k VS Code](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn).
+
+ > 💁 Můžete použít jakékoli IDE nebo editor pro Python, pokud máte preferovaný nástroj, ale pokyny v lekcích budou vycházet z používání VS Code.
+
+1. Nainstalujte rozšíření Pylance pro VS Code. Toto rozšíření poskytuje podporu pro jazyk Python. Pokyny k instalaci tohoto rozšíření naleznete v [dokumentaci k rozšíření Pylance](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=ms-python.vscode-pylance).
+
+Pokyny k instalaci a konfiguraci aplikace CounterFit budou uvedeny v příslušné části zadání, protože se instalují pro každý projekt zvlášť.
+
+## Hello world
+
+Je tradicí při začátcích s novým programovacím jazykem nebo technologií vytvořit aplikaci 'Hello World' – malou aplikaci, která vypíše například text `"Hello World"`, aby se ověřilo, že všechny nástroje jsou správně nastaveny.
+
+Aplikace Hello World pro virtuální IoT hardware zajistí, že máte správně nainstalovaný Python a Visual Studio Code. Také se připojí k CounterFit pro virtuální IoT senzory a akční členy. Nebude používat žádný hardware, pouze se připojí, aby ověřila, že vše funguje.
+
+Tato aplikace bude ve složce `nightlight` a bude znovu použita s jiným kódem v dalších částech tohoto zadání pro vytvoření aplikace nočního světla.
+
+### Konfigurace virtuálního prostředí Pythonu
+
+Jednou z výkonných funkcí Pythonu je možnost instalace [Pip balíčků](https://pypi.org) – to jsou balíčky kódu napsané jinými lidmi a publikované na internetu. Pip balíček můžete nainstalovat na svůj počítač jedním příkazem a poté jej použít ve svém kódu. Pip budete používat k instalaci balíčku pro komunikaci s CounterFit.
+
+Ve výchozím nastavení, když nainstalujete balíček, je dostupný všude na vašem počítači, což může vést k problémům s verzemi balíčků – například jedna aplikace závisí na jedné verzi balíčku, která přestane fungovat, když nainstalujete novou verzi pro jinou aplikaci. Aby se tento problém obešel, můžete použít [virtuální prostředí Pythonu](https://docs.python.org/3/library/venv.html), což je v podstatě kopie Pythonu v dedikované složce, a když nainstalujete Pip balíčky, nainstalují se pouze do této složky.
+
+> 💁 Pokud používáte Raspberry Pi, pak jste na tomto zařízení nenastavili virtuální prostředí pro správu Pip balíčků, místo toho používáte globální balíčky, protože balíčky Grove jsou globálně nainstalovány instalačním skriptem.
+
+#### Úkol – konfigurace virtuálního prostředí Pythonu
+
+Nakonfigurujte virtuální prostředí Pythonu a nainstalujte Pip balíčky pro CounterFit.
+
+1. Z terminálu nebo příkazového řádku spusťte následující příkaz na místě dle vašeho výběru pro vytvoření a přechod do nové složky:
+
+ ```sh
+ mkdir nightlight
+ cd nightlight
+ ```
+
+1. Nyní spusťte následující příkaz pro vytvoření virtuálního prostředí ve složce `.venv`:
+
+ ```sh
+ python3 -m venv .venv
+ ```
+
+ > 💁 Musíte explicitně zavolat `python3` pro vytvoření virtuálního prostředí, protože můžete mít nainstalovaný Python 2 vedle Pythonu 3 (nejnovější verze). Pokud máte nainstalovaný Python 2, pak volání `python` použije Python 2 místo Pythonu 3.
+
+1. Aktivujte virtuální prostředí:
+
+ * Na Windows:
+ * Pokud používáte příkazový řádek nebo příkazový řádek přes Windows Terminal, spusťte:
+
+ ```cmd
+ .venv\Scripts\activate.bat
+ ```
+
+ * Pokud používáte PowerShell, spusťte:
+
+ ```powershell
+ .\.venv\Scripts\Activate.ps1
+ ```
+
+ > Pokud se zobrazí chyba o tom, že spouštění skriptů je na tomto systému zakázáno, budete muset povolit spouštění skriptů nastavením vhodné politiky provádění. To můžete udělat spuštěním PowerShellu jako správce a následným spuštěním následujícího příkazu:
+
+ ```powershell
+ Set-ExecutionPolicy -ExecutionPolicy Unrestricted
+ ```
+
+ Zadejte `Y`, když budete požádáni o potvrzení. Poté znovu spusťte PowerShell a zkuste to znovu.
+
+ Tuto politiku provádění můžete později resetovat, pokud to bude potřeba. Více si o tom můžete přečíst na [stránce o politikách provádění na Microsoft Docs](https://docs.microsoft.com/powershell/module/microsoft.powershell.core/about/about_execution_policies?WT.mc_id=academic-17441-jabenn).
+
+ * Na macOS nebo Linuxu spusťte:
+
+ ```cmd
+ source ./.venv/bin/activate
+ ```
+
+ > 💁 Tyto příkazy by měly být spuštěny ze stejného místa, kde jste spustili příkaz pro vytvoření virtuálního prostředí. Nikdy nebudete muset přejít do složky `.venv`, vždy byste měli spustit aktivační příkaz a jakékoli příkazy pro instalaci balíčků nebo spuštění kódu ze složky, ve které jste byli při vytváření virtuálního prostředí.
+
+1. Jakmile je virtuální prostředí aktivováno, výchozí příkaz `python` spustí verzi Pythonu, která byla použita k vytvoření virtuálního prostředí. Spusťte následující příkaz pro zjištění verze:
+
+ ```sh
+ python --version
+ ```
+
+ Výstup by měl obsahovat následující:
+
+ ```output
+ (.venv) ➜ nightlight python --version
+ Python 3.9.1
+ ```
+
+ > 💁 Vaše verze Pythonu může být jiná – pokud je to verze 3.6 nebo vyšší, je to v pořádku. Pokud ne, smažte tuto složku, nainstalujte novější verzi Pythonu a zkuste to znovu.
+
+1. Spusťte následující příkazy pro instalaci Pip balíčků pro CounterFit. Tyto balíčky zahrnují hlavní aplikaci CounterFit a také shims pro hardware Grove. Tyto shims vám umožňují psát kód, jako byste programovali s fyzickými senzory a akčními členy z ekosystému Grove, ale připojenými k virtuálním IoT zařízením.
+
+ ```sh
+ pip install CounterFit
+ pip install counterfit-connection
+ pip install counterfit-shims-grove
+ ```
+
+ Tyto Pip balíčky budou nainstalovány pouze ve virtuálním prostředí a nebudou dostupné mimo něj.
+
+### Napište kód
+
+Jakmile je virtuální prostředí Pythonu připraveno, můžete napsat kód pro aplikaci 'Hello World'.
+
+#### Úkol – napište kód
+
+Vytvořte Python aplikaci, která vypíše `"Hello World"` do konzole.
+
+1. Z terminálu nebo příkazového řádku spusťte následující příkaz uvnitř virtuálního prostředí pro vytvoření Python souboru s názvem `app.py`:
+
+ * Na Windows spusťte:
+
+ ```cmd
+ type nul > app.py
+ ```
+
+ * Na macOS nebo Linuxu spusťte:
+
+ ```cmd
+ touch app.py
+ ```
+
+1. Otevřete aktuální složku ve VS Code:
+
+ ```sh
+ code .
+ ```
+
+ > 💁 Pokud váš terminál na macOS vrátí `command not found`, znamená to, že VS Code nebyl přidán do PATH. Můžete přidat VS Code do PATH podle pokynů v [sekci Spuštění z příkazového řádku v dokumentaci k VS Code](https://code.visualstudio.com/docs/setup/mac?WT.mc_id=academic-17441-jabenn#_launching-from-the-command-line) a poté příkaz znovu spustit. Na Windows a Linuxu je VS Code ve výchozím nastavení přidán do PATH.
+
+1. Když se VS Code spustí, aktivuje virtuální prostředí Pythonu. Vybrané virtuální prostředí se zobrazí ve spodním stavovém řádku:
+
+ 
+
+1. Pokud je terminál VS Code již spuštěn při spuštění VS Code, nebude mít aktivované virtuální prostředí. Nejjednodušší je ukončit terminál pomocí tlačítka **Kill the active terminal instance**:
+
+ 
+
+ Můžete zjistit, zda má terminál aktivované virtuální prostředí, protože název virtuálního prostředí bude předponou na výzvě terminálu. Například to může být:
+
+ ```sh
+ (.venv) ➜ nightlight
+ ```
+
+ Pokud nemáte `.venv` jako předponu na výzvě, virtuální prostředí není v terminálu aktivní.
+
+1. Spusťte nový terminál VS Code výběrem *Terminal -> New Terminal* nebo stisknutím `` CTRL+` ``. Nový terminál načte virtuální prostředí a volání pro jeho aktivaci se objeví v terminálu. Výzva bude také obsahovat název virtuálního prostředí (`.venv`):
+
+ ```output
+ ➜ nightlight source .venv/bin/activate
+ (.venv) ➜ nightlight
+ ```
+
+1. Otevřete soubor `app.py` z průzkumníka VS Code a přidejte následující kód:
+
+ ```python
+ print('Hello World!')
+ ```
+
+ Funkce `print` vypíše do konzole vše, co jí předáte.
+
+1. Z terminálu VS Code spusťte následující příkaz pro spuštění vaší Python aplikace:
+
+ ```sh
+ python app.py
+ ```
+
+ Ve výstupu bude následující:
+
+ ```output
+ (.venv) ➜ nightlight python app.py
+ Hello World!
+ ```
+
+😀 Vaše aplikace 'Hello World' byla úspěšná!
+
+### Připojte 'hardware'
+
+Jako druhý krok 'Hello World' spustíte aplikaci CounterFit a připojíte k ní svůj kód. To je virtuální ekvivalent připojení IoT hardwaru k vývojové desce.
+
+#### Úkol – připojte 'hardware'
+
+1. Z terminálu VS Code spusťte aplikaci CounterFit následujícím příkazem:
+
+ ```sh
+ counterfit
+ ```
+
+ Aplikace se spustí a otevře ve vašem webovém prohlížeči:
+
+ 
+
+ Bude označena jako *Disconnected* a LED v pravém horním rohu bude vypnutá.
+
+1. Přidejte následující kód na začátek souboru `app.py`:
+
+ ```python
+ from counterfit_connection import CounterFitConnection
+ CounterFitConnection.init('127.0.0.1', 5000)
+ ```
+
+ Tento kód importuje třídu `CounterFitConnection` z modulu `counterfit_connection`, který pochází z Pip balíčku `counterfit-connection`, který jste nainstalovali dříve. Poté inicializuje připojení k aplikaci CounterFit běžící na `127.0.0.1`, což je IP adresa, kterou můžete vždy použít pro přístup k vašemu lokálnímu počítači (často označovanému jako *localhost*), na portu 5000.
+
+ > 💁 Pokud máte jiné aplikace běžící na portu 5000, můžete to změnit aktualizací portu v kódu a spuštěním CounterFit pomocí `CounterFit --port `, kde `` nahradíte požadovaným portem.
+
+1. Budete muset spustit nový terminál VS Code výběrem tlačítka **Create a new integrated terminal**. To proto, že aplikace CounterFit běží v aktuálním terminálu.
+
+ 
+
+1. V tomto novém terminálu spusťte soubor `app.py` jako dříve. Stav CounterFit se změní na **Connected** a LED se rozsvítí.
+
+ 
+
+> 💁 Tento kód najdete ve složce [code/virtual-device](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/virtual-device).
+
+😀 Vaše připojení k hardwaru bylo úspěšné!
+
+---
+
+**Upozornění**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o co největší přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za závazný zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné výklady vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md
new file mode 100644
index 00000000..169e4fba
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md
@@ -0,0 +1,222 @@
+
+# Wio Terminal
+
+[Wio Terminal od Seeed Studios](https://www.seeedstudio.com/Wio-Terminal-p-4509.html) je mikrokontrolér kompatibilní s Arduino, který má vestavěné WiFi, několik senzorů a akčních členů, a také porty pro připojení dalších senzorů a akčních členů pomocí hardwarového ekosystému zvaného [Grove](https://www.seeedstudio.com/category/Grove-c-1003.html).
+
+
+
+## Nastavení
+
+Abyste mohli používat Wio Terminal, budete muset nainstalovat bezplatný software na svůj počítač. Také bude nutné aktualizovat firmware Wio Terminalu, než jej připojíte k WiFi.
+
+### Úkol - nastavení
+
+Nainstalujte požadovaný software a aktualizujte firmware.
+
+1. Nainstalujte Visual Studio Code (VS Code). To je editor, který budete používat k psaní kódu pro zařízení v jazyce C/C++. Pokyny k instalaci VS Code najdete v [dokumentaci k VS Code](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn).
+
+ > 💁 Dalším oblíbeným IDE pro vývoj v Arduino je [Arduino IDE](https://www.arduino.cc/en/software). Pokud již tento nástroj znáte, můžete jej použít místo VS Code a PlatformIO, ale lekce budou obsahovat pokyny založené na použití VS Code.
+
+1. Nainstalujte rozšíření PlatformIO pro VS Code. Toto rozšíření podporuje programování mikrokontrolérů v jazyce C/C++. Pokyny k instalaci tohoto rozšíření najdete v [dokumentaci k rozšíření PlatformIO](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=platformio.platformio-ide). Toto rozšíření závisí na rozšíření Microsoft C/C++, které se automaticky nainstaluje při instalaci PlatformIO.
+
+1. Připojte Wio Terminal k počítači. Wio Terminal má na spodní straně port USB-C, který je třeba připojit k USB portu na vašem počítači. Wio Terminal je dodáván s kabelem USB-C na USB-A, ale pokud váš počítač má pouze USB-C porty, budete potřebovat buď USB-C kabel, nebo adaptér USB-A na USB-C.
+
+1. Postupujte podle pokynů v [dokumentaci Wio Terminal Wiki WiFi Overview](https://wiki.seeedstudio.com/Wio-Terminal-Network-Overview/) pro nastavení Wio Terminalu a aktualizaci firmwaru.
+
+## Hello world
+
+Je tradicí při začátcích s novým programovacím jazykem nebo technologií vytvořit aplikaci 'Hello World' – malou aplikaci, která vypíše text jako `"Hello World"`, aby se ověřilo, že všechny nástroje jsou správně nastaveny.
+
+Aplikace Hello World pro Wio Terminal zajistí, že máte správně nainstalovaný Visual Studio Code s PlatformIO a nastavený pro vývoj mikrokontrolérů.
+
+### Vytvoření projektu PlatformIO
+
+Prvním krokem je vytvoření nového projektu pomocí PlatformIO nakonfigurovaného pro Wio Terminal.
+
+#### Úkol - vytvoření projektu PlatformIO
+
+Vytvořte projekt PlatformIO.
+
+1. Připojte Wio Terminal k počítači.
+
+1. Spusťte VS Code.
+
+1. Na bočním panelu se zobrazí ikona PlatformIO:
+
+ 
+
+ Vyberte tuto položku menu a poté vyberte *PIO Home -> Open*.
+
+ 
+
+1. Na uvítací obrazovce vyberte tlačítko **+ New Project**.
+
+ 
+
+1. Nakonfigurujte projekt v *Průvodci projektem*:
+
+ 1. Pojmenujte svůj projekt `nightlight`.
+
+ 1. V rozbalovacím seznamu *Board* napište `WIO` pro filtrování desek a vyberte *Seeeduino Wio Terminal*.
+
+ 1. Nechte *Framework* nastavený na *Arduino*.
+
+ 1. Buď ponechte zaškrtnuté políčko *Use default location*, nebo jej odškrtněte a vyberte umístění pro svůj projekt.
+
+ 1. Vyberte tlačítko **Finish**.
+
+ 
+
+ PlatformIO stáhne komponenty potřebné ke kompilaci kódu pro Wio Terminal a vytvoří váš projekt. Tento proces může trvat několik minut.
+
+### Prozkoumání projektu PlatformIO
+
+Průzkumník VS Code zobrazí několik souborů a složek vytvořených průvodcem PlatformIO.
+
+#### Složky
+
+* `.pio` - tato složka obsahuje dočasná data potřebná pro PlatformIO, jako jsou knihovny nebo zkompilovaný kód. Pokud ji smažete, automaticky se znovu vytvoří, a není třeba ji přidávat do správy zdrojového kódu, pokud sdílíte svůj projekt na stránkách jako GitHub.
+* `.vscode` - tato složka obsahuje konfiguraci používanou PlatformIO a VS Code. Pokud ji smažete, automaticky se znovu vytvoří, a není třeba ji přidávat do správy zdrojového kódu, pokud sdílíte svůj projekt na stránkách jako GitHub.
+* `include` - tato složka je určena pro externí hlavičkové soubory potřebné při přidávání dalších knihoven do vašeho kódu. V těchto lekcích tuto složku nebudete používat.
+* `lib` - tato složka je určena pro externí knihovny, které chcete volat ze svého kódu. V těchto lekcích tuto složku nebudete používat.
+* `src` - tato složka obsahuje hlavní zdrojový kód vaší aplikace. Zpočátku bude obsahovat jediný soubor - `main.cpp`.
+* `test` - tato složka je určena pro umístění jednotkových testů vašeho kódu.
+
+#### Soubory
+
+* `main.cpp` - tento soubor ve složce `src` obsahuje vstupní bod vaší aplikace. Otevřete tento soubor, který bude obsahovat následující kód:
+
+ ```cpp
+ #include
+
+ void setup() {
+ // put your setup code here, to run once:
+ }
+
+ void loop() {
+ // put your main code here, to run repeatedly:
+ }
+ ```
+
+ Když se zařízení spustí, framework Arduino spustí funkci `setup` jednou, poté opakovaně spouští funkci `loop`, dokud není zařízení vypnuto.
+
+* `.gitignore` - tento soubor obsahuje seznam souborů a složek, které mají být ignorovány při přidávání vašeho kódu do správy zdrojového kódu, například při nahrávání do repozitáře na GitHubu.
+
+* `platformio.ini` - tento soubor obsahuje konfiguraci pro vaše zařízení a aplikaci. Otevřete tento soubor, který bude obsahovat následující kód:
+
+ ```ini
+ [env:seeed_wio_terminal]
+ platform = atmelsam
+ board = seeed_wio_terminal
+ framework = arduino
+ ```
+
+ Sekce `[env:seeed_wio_terminal]` obsahuje konfiguraci pro Wio Terminal. Můžete mít více sekcí `env`, takže váš kód může být kompilován pro více desek.
+
+ Ostatní hodnoty odpovídají konfiguraci z průvodce projektem:
+
+ * `platform = atmelsam` definuje hardware, který Wio Terminal používá (mikrokontrolér založený na ATSAMD51).
+ * `board = seeed_wio_terminal` definuje typ desky mikrokontroléru (Wio Terminal).
+ * `framework = arduino` definuje, že tento projekt používá framework Arduino.
+
+### Napsání aplikace Hello World
+
+Nyní jste připraveni napsat aplikaci Hello World.
+
+#### Úkol - napsání aplikace Hello World
+
+Napište aplikaci Hello World.
+
+1. Otevřete soubor `main.cpp` ve VS Code.
+
+1. Změňte kód tak, aby odpovídal následujícímu:
+
+ ```cpp
+ #include
+
+ void setup()
+ {
+ Serial.begin(9600);
+
+ while (!Serial)
+ ; // Wait for Serial to be ready
+
+ delay(1000);
+ }
+
+ void loop()
+ {
+ Serial.println("Hello World");
+ delay(5000);
+ }
+ ```
+
+ Funkce `setup` inicializuje připojení k sériovému portu – v tomto případě k USB portu, který se používá k připojení Wio Terminalu k vašemu počítači. Parametr `9600` je [baudová rychlost](https://wikipedia.org/wiki/Symbol_rate) (také známá jako symbolová rychlost), což je rychlost, jakou budou data odesílána přes sériový port v bitech za sekundu. Toto nastavení znamená, že se každou sekundu odešle 9 600 bitů (0 a 1) dat. Poté čeká, až bude sériový port připraven.
+
+ Funkce `loop` odešle řádek `Hello World!` na sériový port, tedy znaky `Hello World!` spolu s novým řádkem. Poté usne na 5 000 milisekund, tedy 5 sekund. Po skončení funkce `loop` se znovu spustí, a tak stále dokola, dokud je mikrokontrolér zapnutý.
+
+1. Uveďte Wio Terminal do režimu nahrávání. To bude nutné provést pokaždé, když nahrajete nový kód do zařízení:
+
+ 1. Dvakrát rychle přepněte vypínač dolů – pokaždé se vrátí do polohy zapnuto.
+
+ 1. Zkontrolujte modrou stavovou LED diodu napravo od USB portu. Měla by pulzovat.
+
+ [](https://youtu.be/LeKU_7zLRrQ)
+
+ Klikněte na obrázek výše pro zhlédnutí videa, jak to provést.
+
+1. Zkompilujte a nahrajte kód do Wio Terminalu.
+
+ 1. Otevřete příkazovou paletu VS Code.
+
+ 1. Zadejte `PlatformIO Upload` pro vyhledání možnosti nahrání a vyberte *PlatformIO: Upload*.
+
+ 
+
+ PlatformIO automaticky zkompiluje kód, pokud je to potřeba, před jeho nahráním.
+
+ 1. Kód bude zkompilován a nahrán do Wio Terminalu.
+
+ > 💁 Pokud používáte macOS, zobrazí se upozornění na *DISK NOT EJECTED PROPERLY*. To je způsobeno tím, že se Wio Terminal připojí jako disk během procesu nahrávání a při zápisu zkompilovaného kódu do zařízení se odpojí. Toto upozornění můžete ignorovat.
+
+ ⚠️ Pokud se objeví chyby o nedostupném nahrávacím portu, nejprve se ujistěte, že máte Wio Terminal připojený k počítači, zapnutý pomocí přepínače na levé straně obrazovky a nastavený do režimu nahrávání. Zelená kontrolka na spodní straně by měla svítit a modrá kontrolka by měla pulzovat. Pokud chyba přetrvává, znovu rychle dvakrát přepněte vypínač dolů, abyste Wio Terminal přinutili přejít do režimu nahrávání, a zkuste nahrání znovu.
+
+PlatformIO má Sériový monitor, který může sledovat data odesílaná přes USB kabel z Wio Terminalu. To vám umožní sledovat data odesílaná příkazem `Serial.println("Hello World");`.
+
+1. Otevřete příkazovou paletu VS Code.
+
+1. Zadejte `PlatformIO Serial` pro vyhledání možnosti Sériového monitoru a vyberte *PlatformIO: Serial Monitor*.
+
+ 
+
+ Otevře se nový terminál a data odesílaná přes sériový port budou streamována do tohoto terminálu:
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem101 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Hello World
+ Hello World
+ ```
+
+ `Hello World` se bude tisknout do sériového monitoru každých 5 sekund.
+
+> 💁 Tento kód najdete ve složce [code/wio-terminal](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/wio-terminal).
+
+😀 Vaše aplikace 'Hello World' byla úspěšná!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/2-deeper-dive/README.md b/translations/cs/1-getting-started/lessons/2-deeper-dive/README.md
new file mode 100644
index 00000000..b3f0e8f2
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/2-deeper-dive/README.md
@@ -0,0 +1,277 @@
+
+# Hlubší pohled na IoT
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+Tato lekce byla součástí série [Hello IoT](https://youtube.com/playlist?list=PLmsFUfdnGr3xRts0TIwyaHyQuHaNQcb6-) od [Microsoft Reactor](https://developer.microsoft.com/reactor/?WT.mc_id=academic-17441-jabenn). Lekce byla rozdělena do dvou videí – hodinové lekce a hodinové konzultace, kde se podrobněji probíraly části lekce a odpovídalo se na otázky.
+
+[](https://youtu.be/t0SySWw3z9M)
+
+[](https://youtu.be/tTZYf9EST1E)
+
+> 🎥 Klikněte na obrázky výše pro zhlédnutí videí
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/3)
+
+## Úvod
+
+Tato lekce se podrobněji zabývá některými koncepty, které byly představeny v předchozí lekci.
+
+V této lekci se budeme věnovat:
+
+* [Komponentám IoT aplikace](../../../../../1-getting-started/lessons/2-deeper-dive)
+* [Hlubšímu pohledu na mikrokontroléry](../../../../../1-getting-started/lessons/2-deeper-dive)
+* [Hlubšímu pohledu na jednodeskové počítače](../../../../../1-getting-started/lessons/2-deeper-dive)
+
+## Komponenty IoT aplikace
+
+IoT aplikace se skládá ze dvou hlavních částí: *Internetu* a *zařízení*. Podívejme se na tyto dvě části podrobněji.
+
+### Zařízení
+
+
+
+**Zařízení** v IoT označuje zařízení, které dokáže interagovat s fyzickým světem. Tato zařízení jsou obvykle malá, cenově dostupná a mají nízkou spotřebu energie. Například jednoduché mikrokontroléry s několika kilobajty RAM (oproti gigabajtům v PC), běžící na několika stovkách megahertzů (oproti gigahertzům v PC), ale s tak nízkou spotřebou energie, že mohou fungovat týdny, měsíce nebo dokonce roky na baterie.
+
+Tato zařízení interagují s fyzickým světem buď pomocí senzorů, které sbírají data z okolí, nebo pomocí výstupů či akčních členů, které provádějí fyzické změny. Typickým příkladem je chytrý termostat – zařízení, které má teplotní senzor, prostředek pro nastavení požadované teploty, jako je otočný knoflík nebo dotyková obrazovka, a připojení k topnému nebo chladicímu systému, který lze zapnout, když je detekovaná teplota mimo požadovaný rozsah. Teplotní senzor zjistí, že je v místnosti příliš chladno, a akční člen zapne topení.
+
+
+
+Existuje obrovská škála různých zařízení, která mohou fungovat jako IoT zařízení, od specializovaného hardwaru, který snímá jednu věc, až po univerzální zařízení, dokonce i váš chytrý telefon! Chytrý telefon může pomocí senzorů detekovat okolní svět a pomocí akčních členů s ním interagovat – například pomocí GPS senzoru zjistit vaši polohu a pomocí reproduktoru vám poskytnout navigační pokyny k cíli.
+
+✅ Zamyslete se nad dalšími systémy kolem vás, které čtou data ze senzoru a na jejich základě činí rozhodnutí. Jedním příkladem by mohl být termostat v troubě. Najdete další?
+
+### Internet
+
+**Internetová** část IoT aplikace zahrnuje aplikace, ke kterým se IoT zařízení může připojit za účelem odesílání a přijímání dat, stejně jako další aplikace, které mohou zpracovávat data ze zařízení a pomáhat rozhodovat, jaké požadavky poslat akčním členům IoT zařízení.
+
+Typickým nastavením je použití nějaké cloudové služby, ke které se IoT zařízení připojuje. Tato cloudová služba se stará o věci jako zabezpečení, přijímání zpráv od IoT zařízení a odesílání zpráv zpět. Tato cloudová služba se pak připojuje k dalším aplikacím, které mohou zpracovávat nebo ukládat data ze senzorů, nebo tato data kombinovat s daty z jiných systémů pro rozhodování.
+
+Zařízení se také nemusí vždy připojovat přímo k internetu přes WiFi nebo kabelové připojení. Některá zařízení používají síť typu mesh, aby mezi sebou komunikovala přes technologie jako Bluetooth, přičemž se připojují přes centrální zařízení, které má připojení k internetu.
+
+V případě chytrého termostatu by se termostat připojil k domácí WiFi a následně ke cloudové službě. Odesílal by data o teplotě do této služby, kde by byla uložena do databáze, což by umožnilo majiteli domu kontrolovat aktuální a historické teploty pomocí aplikace na telefonu. Jiná služba v cloudu by věděla, jakou teplotu majitel domu požaduje, a posílala by zprávy zpět do IoT zařízení přes cloudovou službu, aby řídila topný systém.
+
+
+
+Ještě chytřejší verze by mohla využívat AI v cloudu s daty z dalších senzorů připojených k jiným IoT zařízením, jako jsou senzory obsazenosti, které detekují, které místnosti jsou využívány, stejně jako data o počasí nebo váš kalendář, aby inteligentně nastavovala teplotu. Například by mohla vypnout topení, pokud zjistí z vašeho kalendáře, že jste na dovolené, nebo vypnout topení v jednotlivých místnostech podle toho, které místnosti používáte, a postupně se učit z dat, aby byla stále přesnější.
+
+
+
+✅ Jaká další data by mohla pomoci udělat internetově připojený termostat chytřejším?
+
+### IoT na okraji sítě (Edge)
+
+Ačkoli písmeno I v IoT znamená Internet, tato zařízení se nemusí připojovat přímo k internetu. V některých případech se zařízení mohou připojit k tzv. 'edge' zařízením – bránám, které běží na vaší lokální síti, což umožňuje zpracovávat data bez nutnosti připojení k internetu. To může být rychlejší, pokud máte velké množství dat nebo pomalé připojení k internetu, umožňuje to provoz offline tam, kde není připojení k internetu možné, například na lodi nebo v oblastech postižených katastrofou, a umožňuje to uchovávat data v soukromí. Některá zařízení obsahují zpracovatelský kód vytvořený pomocí cloudových nástrojů a tento kód běží lokálně, aby shromažďoval a reagoval na data bez připojení k internetu.
+
+Jedním příkladem je chytré domácí zařízení, jako je Apple HomePod, Amazon Alexa nebo Google Home, které poslouchá váš hlas pomocí AI modelů trénovaných v cloudu, ale běžících lokálně na zařízení. Tato zařízení se 'probudí', když je vysloveno určité slovo nebo fráze, a teprve poté odesílají váš hlas přes internet ke zpracování. Zařízení přestane odesílat hlas v okamžiku, kdy detekuje pauzu ve vašem projevu. Vše, co řeknete před probuzením zařízení klíčovým slovem, a vše, co řeknete poté, co zařízení přestane poslouchat, nebude odesláno přes internet poskytovateli zařízení, a tedy zůstane soukromé.
+
+✅ Zamyslete se nad dalšími scénáři, kde je důležité zachovat soukromí, takže by bylo lepší zpracovávat data na okraji sítě než v cloudu. Napověda – přemýšlejte o IoT zařízeních s kamerami nebo jinými zobrazovacími zařízeními.
+
+### Bezpečnost IoT
+
+S jakýmkoli připojením k internetu je důležité myslet na bezpečnost. Existuje starý vtip, že 'S v IoT znamená Security' – v IoT žádné 'S' není, což naznačuje, že není bezpečné.
+
+IoT zařízení se připojují ke cloudové službě, a proto jsou jen tak bezpečná, jak bezpečná je tato cloudová služba – pokud vaše cloudová služba umožňuje připojení jakémukoli zařízení, mohou být odesílána škodlivá data nebo může dojít k virovým útokům. To může mít velmi reálné důsledky, protože IoT zařízení interagují a ovládají jiná zařízení. Například [červ Stuxnet](https://wikipedia.org/wiki/Stuxnet) manipuloval s ventily v centrifugách, aby je poškodil. Hackeři také využili [špatného zabezpečení k přístupu k dětským chůvičkám](https://www.npr.org/sections/thetwo-way/2018/06/05/617196788/s-c-mom-says-baby-monitor-was-hacked-experts-say-many-devices-are-vulnerable) a dalším domácím sledovacím zařízením.
+
+> 💁 Někdy IoT zařízení a edge zařízení běží na síti zcela izolované od internetu, aby byla data soukromá a bezpečná. Tomu se říká [air-gapping](https://wikipedia.org/wiki/Air_gap_(networking)).
+
+## Hlubší pohled na mikrokontroléry
+
+V předchozí lekci jsme představili mikrokontroléry. Nyní se na ně podíváme podrobněji.
+
+### CPU
+
+CPU je 'mozek' mikrokontroléru. Je to procesor, který spouští váš kód a může odesílat data do připojených zařízení nebo je od nich přijímat. CPU může obsahovat jedno nebo více jader – v podstatě jeden nebo více procesorů, které mohou spolupracovat na spuštění vašeho kódu.
+
+CPU se spoléhá na hodiny, které tikají mnohokrát za sekundu. Každý tik, nebo cyklus, synchronizuje akce, které může CPU provádět. S každým tikem může CPU vykonat instrukci z programu, například načíst data z externího zařízení nebo provést matematický výpočet. Tento pravidelný cyklus umožňuje dokončit všechny akce před zpracováním další instrukce.
+
+Rychlost hodin je měřena v [Hertzích (Hz)](https://wikipedia.org/wiki/Hertz), což je standardní jednotka, kde 1 Hz znamená jeden cyklus za sekundu.
+
+> 🎓 Rychlosti CPU jsou často uváděny v MHz nebo GHz. 1 MHz je 1 milion Hz, 1 GHz je 1 miliarda Hz.
+
+> 💁 CPU vykonávají programy pomocí [cyklu načtení-dekódování-vykonání](https://wikipedia.org/wiki/Instruction_cycle). Každý tik hodin CPU načte další instrukci z paměti, dekóduje ji a poté ji vykoná, například pomocí aritmeticko-logické jednotky (ALU) k sečtení dvou čísel. Některé instrukce trvají více tiků, takže další cyklus začne po dokončení předchozí instrukce.
+
+
+
+Mikrokontroléry mají mnohem nižší rychlosti hodin než stolní nebo přenosné počítače, nebo dokonce většina chytrých telefonů. Například Wio Terminal má CPU, který běží na 120 MHz, tedy 120 000 000 cyklů za sekundu.
+
+✅ Průměrný PC nebo Mac má CPU s více jádry běžícími na několika gigahertzích, což znamená, že hodiny tikají miliardkrát za sekundu. Zjistěte rychlost hodin vašeho počítače a porovnejte, kolikrát je rychlejší než Wio Terminal.
+
+Každý cyklus hodin spotřebovává energii a generuje teplo. Čím rychleji tikají, tím více energie se spotřebuje a více tepla se vytvoří. Počítače mají chladiče a ventilátory pro odvod tepla, bez kterých by se přehřály a během několika sekund vypnuly. Mikrokontroléry často nemají ani jedno, protože běží mnohem chladněji a tedy pomaleji. Počítače běží na síťové napájení nebo velké baterie na několik hodin, mikrokontroléry mohou běžet dny, měsíce nebo dokonce roky na malé baterie. Mikrokontroléry mohou mít také jádra, která běží na různých rychlostech, a přepínat na pomalejší jádra s nízkou spotřebou, když je zatížení CPU nízké, aby se snížila spotřeba energie.
+
+> 💁 Některé PC a Macy přijímají stejnou kombinaci rychlých jader s vysokým výkonem a pomalejších jader s nízkou spotřebou, aby šetřily baterii. Například čip M1 v nejnovějších noteboocích Apple může přepínat mezi 4 výkonnostními jádry a 4 efektivními jádry, aby optimalizoval výdrž baterie nebo rychlost v závislosti na úloze.
+
+✅ Udělejte si malý průzkum: Přečtěte si o CPU na [Wikipedii](https://wikipedia.org/wiki/Central_processing_unit).
+
+#### Úkol
+
+Prozkoumejte Wio Terminal.
+
+Pokud používáte Wio Terminal pro tyto lekce, zkuste najít CPU. Najděte sekci *Hardware Overview* na [produktové stránce Wio Terminal](https://www.seeedstudio.com/Wio-Terminal-p-4509.html) pro obrázek vnitřku zařízení a zkuste najít CPU přes průhledné plastové okénko na zadní straně.
+
+### Paměť
+
+Mikrokontroléry obvykle mají dva typy paměti – paměť pro programy a paměť s náhodným přístupem (RAM).
+
+Paměť pro programy je nevolatilní, což znamená, že cokoli do ní zapíšete, zůstane i po vypnutí zařízení. Tato paměť ukládá váš programový kód.
+
+RAM je paměť, kterou program používá při běhu, obsahující proměnné alokované vaším programem a data získaná z periferií. RAM je volatilní, což znamená, že při výpadku napájení se její obsah ztratí, což efektivně resetuje váš program.
+🎓 Paměť programu uchovává váš kód a zůstává zachována i při výpadku napájení.
+> 🎓 RAM se používá k provozu vašeho programu a je resetována, když není napájení
+
+Stejně jako u CPU je paměť na mikrokontroléru o několik řádů menší než na PC nebo Macu. Typický počítač může mít 8 gigabajtů (GB) RAM, což je 8 000 000 000 bajtů, přičemž každý bajt má dostatek místa pro uložení jednoho písmene nebo čísla od 0 do 255. Mikrokontrolér by měl pouze kilobajty (KB) RAM, přičemž kilobajt je 1 000 bajtů. Wio terminál zmíněný výše má 192 KB RAM, což je 192 000 bajtů - více než 40 000krát méně než průměrný počítač!
+
+Diagram níže ukazuje relativní rozdíl ve velikosti mezi 192 KB a 8 GB - malá tečka uprostřed představuje 192 KB.
+
+
+
+Úložiště pro programy je také menší než u PC. Typický počítač může mít 500GB pevný disk pro ukládání programů, zatímco mikrokontrolér může mít pouze kilobajty nebo možná několik megabajtů (MB) úložiště (1 MB je 1 000 KB, nebo 1 000 000 bajtů). Wio terminál má 4 MB úložiště pro programy.
+
+✅ Udělejte si malý průzkum: Kolik RAM a úložiště má počítač, na kterém toto čtete? Jak to srovnáváte s mikrokontrolérem?
+
+### Vstup/Výstup
+
+Mikrokontroléry potřebují vstupní a výstupní (I/O) připojení, aby mohly číst data ze senzorů a posílat řídicí signály do akčních členů. Obvykle obsahují řadu univerzálních vstupně/výstupních (GPIO) pinů. Tyto piny lze v softwaru nakonfigurovat jako vstupní (tj. přijímají signál) nebo výstupní (posílají signál).
+
+🧠⬅️ Vstupní piny se používají ke čtení hodnot ze senzorů
+
+🧠➡️ Výstupní piny posílají instrukce do akčních členů
+
+✅ O tom se dozvíte více v následující lekci.
+
+#### Úkol
+
+Prozkoumejte Wio terminál.
+
+Pokud používáte Wio terminál pro tyto lekce, najděte GPIO piny. Najděte sekci *Pinout diagram* na [produktové stránce Wio terminálu](https://www.seeedstudio.com/Wio-Terminal-p-4509.html), abyste zjistili, které piny jsou které. Wio terminál je dodáván s nálepkou, kterou můžete připevnit na zadní stranu s čísly pinů, takže ji nyní přidejte, pokud jste to ještě neudělali.
+
+### Fyzická velikost
+
+Mikrokontroléry jsou obvykle malé, přičemž nejmenší, [Freescale Kinetis KL03 MCU, je dostatečně malý, aby se vešel do důlku golfového míčku](https://www.edn.com/tiny-arm-cortex-m0-based-mcu-shrinks-package/). Samotné CPU v PC může měřit 40 mm x 40 mm, a to nezahrnuje chladiče a ventilátory potřebné k tomu, aby CPU mohlo běžet déle než několik sekund bez přehřátí, což je podstatně větší než celý mikrokontrolér. Vývojářská sada Wio terminálu s mikrokontrolérem, krytem, obrazovkou a řadou připojení a komponent není o moc větší než samotné CPU Intel i9, a podstatně menší než CPU s chladičem a ventilátorem!
+
+| Zařízení | Velikost |
+| -------------------------------- | --------------------- |
+| Freescale Kinetis KL03 | 1,6 mm x 2 mm x 1 mm |
+| Wio terminál | 72 mm x 57 mm x 12 mm |
+| Intel i9 CPU, chladič a ventilátor | 136 mm x 145 mm x 103 mm |
+
+### Frameworky a operační systémy
+
+Kvůli nízké rychlosti a velikosti paměti mikrokontroléry nespouštějí operační systém (OS) v běžném smyslu slova. Operační systém, který umožňuje běh vašeho počítače (Windows, Linux nebo macOS), potřebuje hodně paměti a výpočetního výkonu k provozování úkolů, které jsou pro mikrokontrolér zcela zbytečné. Pamatujte, že mikrokontroléry jsou obvykle naprogramovány tak, aby vykonávaly jeden nebo více velmi specifických úkolů, na rozdíl od univerzálního počítače, jako je PC nebo Mac, který musí podporovat uživatelské rozhraní, přehrávat hudbu nebo filmy, poskytovat nástroje pro psaní dokumentů nebo kódu, hrát hry nebo procházet internet.
+
+Pro programování mikrokontroléru bez OS potřebujete nějaké nástroje, které vám umožní sestavit váš kód tak, aby mohl běžet na mikrokontroléru, a používat API, která mohou komunikovat s periferiemi. Každý mikrokontrolér je jiný, takže výrobci obvykle podporují standardní frameworky, které vám umožní sledovat standardní 'recept' pro sestavení vašeho kódu a jeho spuštění na jakémkoli mikrokontroléru, který tento framework podporuje.
+
+Mikrokontroléry můžete programovat i s OS - často označovaným jako real-time operating system (RTOS), protože jsou navrženy tak, aby zvládaly odesílání dat do a z periferií v reálném čase. Tyto operační systémy jsou velmi lehké a poskytují funkce jako:
+
+* Multithreading, který umožňuje vašemu kódu spouštět více bloků kódu současně, buď na více jádrech, nebo střídavě na jednom jádře
+* Síťové funkce pro bezpečnou komunikaci přes internet
+* Komponenty grafického uživatelského rozhraní (GUI) pro vytváření uživatelských rozhraní (UI) na zařízeních s obrazovkami.
+
+✅ Přečtěte si o různých RTOS: [Azure RTOS](https://azure.microsoft.com/services/rtos/?WT.mc_id=academic-17441-jabenn), [FreeRTOS](https://www.freertos.org), [Zephyr](https://www.zephyrproject.org)
+
+#### Arduino
+
+
+
+[Arduino](https://www.arduino.cc) je pravděpodobně nejpopulárnější framework pro mikrokontroléry, zejména mezi studenty, nadšenci a tvůrci. Arduino je open source elektronická platforma kombinující software a hardware. Můžete si koupit desky kompatibilní s Arduinem přímo od Arduino nebo od jiných výrobců a poté je programovat pomocí frameworku Arduino.
+
+Desky Arduino se programují v jazycích C nebo C++. Použití C/C++ umožňuje, aby byl váš kód kompilován velmi malý a běžel rychle, což je potřeba na omezeném zařízení, jako je mikrokontrolér. Jádro aplikace Arduino se nazývá sketch a je to C/C++ kód se dvěma funkcemi - `setup` a `loop`. Když se deska spustí, kód frameworku Arduino spustí funkci `setup` jednou, poté bude funkci `loop` spouštět znovu a znovu, dokud nebude vypnuto napájení.
+
+Do funkce `setup` byste napsali svůj inicializační kód, například připojení k WiFi a cloudovým službám nebo inicializaci pinů pro vstup a výstup. Do funkce `loop` byste pak napsali zpracovatelský kód, například čtení ze senzoru a odesílání hodnoty do cloudu. Obvykle byste do každé smyčky přidali zpoždění, například pokud chcete, aby se data ze senzoru odesílala každých 10 sekund, přidali byste na konci smyčky zpoždění 10 sekund, aby mikrokontrolér mohl spát, šetřit energii, a poté spustit smyčku znovu, když je potřeba.
+
+
+
+✅ Tato architektura programu je známá jako *event loop* nebo *message loop*. Mnoho aplikací ji používá na pozadí a je standardem pro většinu desktopových aplikací, které běží na OS jako Windows, macOS nebo Linux. Funkce `loop` naslouchá zprávám z komponent uživatelského rozhraní, jako jsou tlačítka, nebo zařízení, jako je klávesnice, a na ně reaguje. Více si můžete přečíst v tomto [článku o event loop](https://wikipedia.org/wiki/Event_loop).
+
+Arduino poskytuje standardní knihovny pro interakci s mikrokontroléry a GPIO piny, s různými implementacemi na pozadí pro běh na různých mikrokontrolérech. Například funkce [`delay`](https://www.arduino.cc/reference/en/language/functions/time/delay/) pozastaví program na danou dobu, funkce [`digitalRead`](https://www.arduino.cc/reference/en/language/functions/digital-io/digitalread/) přečte hodnotu `HIGH` nebo `LOW` z daného pinu, bez ohledu na to, na které desce kód běží. Tyto standardní knihovny znamenají, že kód Arduino napsaný pro jednu desku lze rekompilovat pro jakoukoli jinou desku Arduino a bude fungovat, za předpokladu, že piny jsou stejné a desky podporují stejné funkce.
+
+Existuje velký ekosystém knihoven třetích stran pro Arduino, které vám umožňují přidávat další funkce do vašich projektů Arduino, například použití senzorů a akčních členů nebo připojení ke cloudovým IoT službám.
+
+##### Úkol
+
+Prozkoumejte Wio terminál.
+
+Pokud používáte Wio terminál pro tyto lekce, znovu si přečtěte kód, který jste napsali v minulé lekci. Najděte funkce `setup` a `loop`. Sledujte sériový výstup pro opakované volání funkce `loop`. Zkuste přidat kód do funkce `setup`, který zapisuje na sériový port, a pozorujte, že tento kód je volán pouze jednou při každém restartu. Zkuste restartovat zařízení pomocí vypínače na boku, abyste ukázali, že je tato funkce volána při každém restartu zařízení.
+
+## Hlubší pohled na jednodeskové počítače
+
+V minulé lekci jsme představili jednodeskové počítače. Nyní se na ně podíváme podrobněji.
+
+### Raspberry Pi
+
+
+
+[Nadace Raspberry Pi](https://www.raspberrypi.org) je charitativní organizace z Velké Británie založená v roce 2009 na podporu studia informatiky, zejména na školní úrovni. V rámci této mise vyvinuli jednodeskový počítač nazvaný Raspberry Pi. Raspberry Pi jsou aktuálně dostupné ve 3 variantách - plné velikosti, menší Pi Zero a výpočetní modul, který lze zabudovat do vašeho finálního IoT zařízení.
+
+
+
+Nejnovější iterací plnohodnotného Raspberry Pi je Raspberry Pi 4B. Má čtyřjádrový (4 jádra) CPU běžící na 1,5 GHz, 2, 4 nebo 8 GB RAM, gigabitový ethernet, WiFi, 2 HDMI porty podporující 4k obrazovky, audio a kompozitní video výstupní port, USB porty (2 USB 2.0, 2 USB 3.0), 40 GPIO pinů, konektor pro kameru Raspberry Pi a slot na SD kartu. To vše na desce o rozměrech 88 mm x 58 mm x 19,5 mm, napájené 3A USB-C napájecím zdrojem. Tyto desky začínají na ceně 35 USD, což je mnohem levnější než PC nebo Mac.
+
+> 💁 Existuje také Pi400, vše v jednom počítač s Pi4 zabudovaným do klávesnice.
+
+
+
+Pi Zero je mnohem menší a má nižší výkon. Má jednojádrový 1GHz CPU, 512 MB RAM, WiFi (v modelu Zero W), jeden HDMI port, micro-USB port, 40 GPIO pinů, konektor pro kameru Raspberry Pi a slot na SD kartu. Měří 65 mm x 30 mm x 5 mm a spotřebovává velmi málo energie. Zero stojí 5 USD, verze W s WiFi 10 USD.
+
+> 🎓 CPU v obou těchto zařízeních jsou procesory ARM, na rozdíl od procesorů Intel/AMD x86 nebo x64, které najdete ve většině PC a Maců. Tyto procesory jsou podobné těm, které najdete v některých mikrokontrolérech, stejně jako v téměř všech mobilních telefonech, Microsoft Surface X a nových Apple Silicon Macích.
+
+Všechny varianty Raspberry Pi běží na verzi Debian Linuxu nazvané Raspberry Pi OS. Tento systém je dostupný ve verzi lite bez desktopu, což je ideální pro 'headless' projekty, kde nepotřebujete obrazovku, nebo ve verzi s plným desktopovým prostředím, s webovým prohlížečem, kancelářskými aplikacemi, nástroji pro programování a hrami. Protože OS je verzí Debian Linuxu, můžete nainstalovat jakoukoli aplikaci nebo nástroj, který běží na Debianu a je vytvořen pro procesor ARM uvnitř Pi.
+
+#### Úkol
+
+Prozkoumejte Raspberry Pi.
+
+Pokud používáte Raspberry Pi pro tyto lekce, přečtěte si o různých hardwarových komponentech na desce.
+
+* Podrobnosti o procesorech používaných na [stránce dokumentace hardwaru Raspberry Pi](https://www.raspberrypi.org/documentation/hardware/raspberrypi/). Přečtěte si o procesoru použitém ve vašem Pi.
+* Najděte GPIO piny. Přečtěte si více o nich na [dokumentaci GPIO Raspberry Pi](https://www.raspberrypi.org/documentation/hardware/raspberrypi/gpio/README.md). Použijte [průvodce použitím GPIO pinů](https://www.raspberrypi.org/documentation/usage/gpio/README.md) k identifikaci různých pinů na vašem Pi.
+
+### Programování jednodeskových počítačů
+
+Jednodeskové počítače jsou plnohodnotné počítače, které běží na plnohodnotném OS. To znamená, že existuje široká škála programovacích jazyků, frameworků a nástrojů, které můžete použít k jejich programování, na rozdíl od mikrokontrolérů, které spoléhají na podporu desky ve frameworcích jako Arduino. Většina programovacích jazyků má knihovny, které umožňují přístup k GPIO pinům pro odesílání a přijímání dat ze senzorů a akčních členů.
+
+✅ Jaké programovací jazyky znáte? Jsou podporovány na Linuxu?
+
+Nejčastějším programovacím jazykem pro vytváření IoT aplikací na Raspberry Pi je Python. Existuje obrovský ekosystém hardwaru navrženého pro Pi a téměř všechny tyto komponenty zahrnují příslušný kód potřebný k jejich použití jako knihovny Pythonu. Některé z těchto ekosystémů jsou založeny na 'hats' - takto nazývané, protože sedí na Pi jako klobouk a připojují se velkým konektorem k 40 GPIO pinům. Tyto hats poskytují další schopnosti, jako jsou obrazovky, senzory, dálkově ovládaná auta nebo adaptéry umožňující připojení senzorů se standardizovanými kabely.
+### Použití jednodeskových počítačů v profesionálních IoT nasazeních
+
+Jednodeskové počítače se používají v profesionálních IoT nasazeních, nejen jako vývojářské sady. Mohou poskytnout výkonný způsob ovládání hardwaru a provádění složitých úkolů, jako je například provozování modelů strojového učení. Například existuje [Raspberry Pi 4 Compute Module](https://www.raspberrypi.org/blog/raspberry-pi-compute-module-4/), který nabízí veškerý výkon Raspberry Pi 4, ale v kompaktnější a levnější podobě bez většiny portů, navržený pro instalaci do vlastního hardwaru.
+
+---
+
+## 🚀 Výzva
+
+Výzvou v poslední lekci bylo vyjmenovat co nejvíce IoT zařízení, která máte doma, ve škole nebo na pracovišti. U každého zařízení na tomto seznamu si zkuste odpovědět, zda jsou postavena na mikrokontrolérech, jednodeskových počítačích, nebo dokonce na kombinaci obou.
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/4)
+
+## Recenze a samostudium
+
+* Přečtěte si [průvodce začátky s Arduinem](https://www.arduino.cc/en/Guide/Introduction), abyste lépe porozuměli platformě Arduino.
+* Přečtěte si [úvod do Raspberry Pi 4](https://www.raspberrypi.org/products/raspberry-pi-4-model-b/), abyste se dozvěděli více o Raspberry Pi.
+* Zjistěte více o některých pojmech a zkratkách v článku [Co jsou vlastně CPU, MPU, MCU a GPU v Electrical Engineering Journal](https://www.eejournal.com/article/what-the-faq-are-cpus-mpus-mcus-and-gpus/).
+
+✅ Použijte tyto průvodce spolu s náklady uvedenými po kliknutí na odkazy v [průvodci hardwarem](../../../hardware.md), abyste se rozhodli, jakou hardwarovou platformu chcete použít, nebo zda raději použijete virtuální zařízení.
+
+## Zadání
+
+[Porovnejte a kontrastujte mikrokontroléry a jednodeskové počítače](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neneseme odpovědnost za jakékoli nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/2-deeper-dive/assignment.md b/translations/cs/1-getting-started/lessons/2-deeper-dive/assignment.md
new file mode 100644
index 00000000..43d239e6
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/2-deeper-dive/assignment.md
@@ -0,0 +1,26 @@
+
+# Porovnání a kontrast mikrokontrolérů a jednodeskových počítačů
+
+## Instrukce
+
+Tato lekce se zabývala mikrokontroléry a jednodeskovými počítači. Vytvořte tabulku, která je porovnává a kontrastuje, a uveďte alespoň 2 důvody, proč byste použili mikrokontrolér místo jednodeskového počítače, a alespoň 2 důvody, proč byste použili jednodeskový počítač místo mikrokontroléru.
+
+## Hodnotící kritéria
+
+| Kritéria | Vynikající | Přiměřené | Vyžaduje zlepšení |
+| -------- | ---------- | --------- | ----------------- |
+| Vytvoření tabulky porovnávající mikrokontroléry a jednodeskové počítače | Vytvořil seznam s několika položkami správně porovnávajícími a kontrastujícími | Vytvořil seznam pouze s několika položkami | Byl schopen vytvořit pouze jednu položku nebo žádnou pro porovnání a kontrast |
+| Důvody pro použití jednoho oproti druhému | Byl schopen uvést 2 nebo více důvodů pro mikrokontroléry a 2 nebo více pro jednodeskové počítače | Byl schopen uvést pouze 1-2 důvody pro mikrokontrolér a 1-2 důvody pro jednodeskový počítač | Nebyl schopen uvést 1 nebo více důvodů pro mikrokontrolér nebo jednodeskový počítač |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/README.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/README.md
new file mode 100644
index 00000000..e85b581c
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/README.md
@@ -0,0 +1,230 @@
+
+# Interakce s fyzickým světem pomocí senzorů a akčních členů
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+Tato lekce byla součástí série [Hello IoT](https://youtube.com/playlist?list=PLmsFUfdnGr3xRts0TIwyaHyQuHaNQcb6-) od [Microsoft Reactor](https://developer.microsoft.com/reactor/?WT.mc_id=academic-17441-jabenn). Lekce byla rozdělena do dvou videí - hodinové lekce a hodinové konzultace, kde se podrobněji probíraly části lekce a odpovídalo se na otázky.
+
+[](https://youtu.be/Lqalu1v6aF4)
+
+[](https://youtu.be/qR3ekcMlLWA)
+
+> 🎥 Klikněte na obrázky výše pro zhlédnutí videí
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/5)
+
+## Úvod
+
+Tato lekce vás seznámí se dvěma důležitými koncepty pro vaše IoT zařízení - senzory a akčními členy. Prakticky si je vyzkoušíte, přidáte světelný senzor do svého IoT projektu a poté přidáte LED diodu, která bude ovládána úrovní světla, čímž vytvoříte noční světlo.
+
+V této lekci se budeme zabývat:
+
+* [Co jsou senzory?](../../../../../1-getting-started/lessons/3-sensors-and-actuators)
+* [Použití senzoru](../../../../../1-getting-started/lessons/3-sensors-and-actuators)
+* [Typy senzorů](../../../../../1-getting-started/lessons/3-sensors-and-actuators)
+* [Co jsou akční členy?](../../../../../1-getting-started/lessons/3-sensors-and-actuators)
+* [Použití akčního členu](../../../../../1-getting-started/lessons/3-sensors-and-actuators)
+* [Typy akčních členů](../../../../../1-getting-started/lessons/3-sensors-and-actuators)
+
+## Co jsou senzory?
+
+Senzory jsou hardwarová zařízení, která snímají fyzický svět - měří jednu nebo více vlastností svého okolí a posílají informace do IoT zařízení. Existuje obrovské množství senzorů, protože je možné měřit mnoho různých věcí, od přírodních vlastností, jako je teplota vzduchu, až po fyzické interakce, jako je pohyb.
+
+Mezi běžné senzory patří:
+
+* Teplotní senzory - měří teplotu vzduchu nebo teplotu prostředí, ve kterém se nacházejí. Pro hobby projekty a vývojáře jsou často kombinovány s měřením tlaku vzduchu a vlhkosti v jednom senzoru.
+* Tlačítka - detekují, kdy jsou stisknuta.
+* Světelné senzory - detekují úroveň světla a mohou být zaměřeny na konkrétní barvy, UV světlo, IR světlo nebo obecné viditelné světlo.
+* Kamery - snímají vizuální reprezentaci světa prostřednictvím fotografií nebo streamování videa.
+* Akcelerometry - detekují pohyb v několika směrech.
+* Mikrofony - snímají zvuk, buď obecnou úroveň zvuku, nebo směrový zvuk.
+
+✅ Udělejte si průzkum. Jaké senzory má váš telefon?
+
+Všechny senzory mají jedno společné - převádějí to, co snímají, na elektrický signál, který může být interpretován IoT zařízením. Jak je tento elektrický signál interpretován, závisí na senzoru a také na komunikačním protokolu, který se používá k přenosu dat do IoT zařízení.
+
+## Použití senzoru
+
+Postupujte podle příslušného návodu níže a přidejte senzor do svého IoT zařízení:
+
+* [Arduino - Wio Terminal](wio-terminal-sensor.md)
+* [Jednodeskový počítač - Raspberry Pi](pi-sensor.md)
+* [Jednodeskový počítač - Virtuální zařízení](virtual-device-sensor.md)
+
+## Typy senzorů
+
+Senzory mohou být buď analogové, nebo digitální.
+
+### Analogové senzory
+
+Některé z nejzákladnějších senzorů jsou analogové. Tyto senzory přijímají napětí z IoT zařízení, senzorové komponenty toto napětí upravují a napětí, které senzor vrací, je měřeno pro získání hodnoty senzoru.
+
+> 🎓 Napětí je měřítkem toho, jak velký "tah" je potřeba k přenosu elektřiny z jednoho místa na druhé, například z kladného pólu baterie na záporný pól. Například standardní AA baterie má 1,5V (V je symbol pro volty) a může tlačit elektřinu silou 1,5V z kladného pólu na záporný. Různé elektrické komponenty vyžadují různá napětí, například LED dioda může svítit při napětí mezi 2-3V, ale 100W žárovka by potřebovala 240V. Více o napětí si můžete přečíst na [stránce o napětí na Wikipedii](https://wikipedia.org/wiki/Voltage).
+
+Jedním z příkladů je potenciometr. Jedná se o otočný knoflík, který můžete otáčet mezi dvěma polohami, a senzor měří úhel otočení.
+
+
+
+IoT zařízení pošle elektrický signál do potenciometru s napětím, například 5 voltů (5V). Jakmile je potenciometr nastaven, mění napětí, které vychází na druhé straně. Představte si potenciometr označený jako knoflík, který jde od 0 do [11](https://wikipedia.org/wiki/Up_to_eleven), například jako ovladač hlasitosti na zesilovači. Když je potenciometr v poloze úplně vypnuto (0), vychází 0V (0 voltů). Když je v poloze úplně zapnuto (11), vychází 5V (5 voltů).
+
+> 🎓 Toto je zjednodušení, více o potenciometrech a proměnných odporech si můžete přečíst na [stránce o potenciometrech na Wikipedii](https://wikipedia.org/wiki/Potentiometer).
+
+Napětí, které vychází ze senzoru, je poté čteno IoT zařízením a zařízení na něj může reagovat. V závislosti na senzoru může být toto napětí libovolná hodnota nebo může odpovídat standardní jednotce. Například analogový teplotní senzor založený na [termistoru](https://wikipedia.org/wiki/Thermistor) mění svůj odpor v závislosti na teplotě. Výstupní napětí může být poté převedeno na teplotu v Kelvinech a odpovídajícím způsobem na °C nebo °F pomocí výpočtů v kódu.
+
+✅ Co si myslíte, že se stane, pokud senzor vrátí vyšší napětí, než bylo odesláno (například z externího zdroje napájení)? ⛔️ NEZKOUŠEJTE to.
+
+#### Převod z analogu na digitál
+
+IoT zařízení jsou digitální - nemohou pracovat s analogovými hodnotami, pouze s 0 a 1. To znamená, že analogové hodnoty senzorů musí být převedeny na digitální signál, než mohou být zpracovány. Mnoho IoT zařízení má převodníky z analogu na digitál (ADC), které převádějí analogové vstupy na digitální reprezentace jejich hodnot. Senzory mohou také pracovat s ADC prostřednictvím připojovací desky. Například v ekosystému Seeed Grove s Raspberry Pi se analogové senzory připojují ke specifickým portům na 'hat', který sedí na Pi a je připojen k GPIO pinům Pi. Tento hat má ADC, který převádí napětí na digitální signál, který může být odeslán z GPIO pinů Pi.
+
+Představte si, že máte analogový světelný senzor připojený k IoT zařízení, které používá 3,3V a vrací hodnotu 1V. Tento 1V nemá v digitálním světě žádný význam, takže musí být převeden. Napětí bude převedeno na analogovou hodnotu pomocí stupnice v závislosti na zařízení a senzoru. Jedním z příkladů je světelný senzor Seeed Grove, který vrací hodnoty od 0 do 1 023. Pro tento senzor běžící na 3,3V by výstup 1V odpovídal hodnotě 300. IoT zařízení nemůže pracovat s hodnotou 300 jako s analogovou hodnotou, takže hodnota by byla převedena na `0000000100101100`, což je binární reprezentace čísla 300 vytvořená Grove hatem. Tato hodnota by pak byla zpracována IoT zařízením.
+
+✅ Pokud neznáte binární soustavu, udělejte si malý průzkum a zjistěte, jak jsou čísla reprezentována pomocí 0 a 1. [Úvod do binární soustavy na BBC Bitesize](https://www.bbc.co.uk/bitesize/guides/zwsbwmn/revision/1) je skvělým místem, kde začít.
+
+Z pohledu programování je toto obvykle řešeno knihovnami, které jsou dodávány se senzory, takže se o tento převod nemusíte starat sami. Pro světelný senzor Grove byste použili Python knihovnu a zavolali vlastnost `light`, nebo použili Arduino knihovnu a zavolali `analogRead` pro získání hodnoty 300.
+
+### Digitální senzory
+
+Digitální senzory, stejně jako analogové senzory, detekují svět kolem sebe pomocí změn elektrického napětí. Rozdíl je v tom, že vracejí digitální signál, buď měřením pouze dvou stavů, nebo použitím vestavěného ADC. Digitální senzory jsou stále běžnější, aby se předešlo nutnosti používat ADC buď na připojovací desce, nebo přímo na IoT zařízení.
+
+Nejjednodušším digitálním senzorem je tlačítko nebo spínač. Jedná se o senzor se dvěma stavy, zapnuto nebo vypnuto.
+
+
+
+Piny na IoT zařízeních, jako jsou GPIO piny, mohou tento signál přímo měřit jako 0 nebo 1. Pokud je napětí odeslané stejné jako napětí vrácené, hodnota je 1, jinak je hodnota 0. Není potřeba signál převádět, může být pouze 1 nebo 0.
+
+> 💁 Napětí nikdy není přesné, zejména protože komponenty v senzoru mají určitý odpor, takže obvykle existuje tolerance. Například GPIO piny na Raspberry Pi pracují na 3,3V a čtou návratový signál nad 1,8V jako 1, pod 1,8V jako 0.
+
+* 3,3V jde do tlačítka. Tlačítko je vypnuté, takže vychází 0V, což dává hodnotu 0.
+* 3,3V jde do tlačítka. Tlačítko je zapnuté, takže vychází 3,3V, což dává hodnotu 1.
+
+Pokročilejší digitální senzory čtou analogové hodnoty a poté je převádějí pomocí vestavěných ADC na digitální signály. Například digitální teplotní senzor stále používá termočlánek stejným způsobem jako analogový senzor a stále měří změnu napětí způsobenou odporem termočlánku při aktuální teplotě. Místo vrácení analogové hodnoty a spoléhání se na zařízení nebo připojovací desku pro převod na digitální signál, vestavěný ADC v senzoru hodnotu převede a odešle ji jako sérii 0 a 1 do IoT zařízení. Tyto 0 a 1 jsou odesílány stejným způsobem jako digitální signál pro tlačítko, kde 1 znamená plné napětí a 0 znamená 0V.
+
+
+
+Odesílání digitálních dat umožňuje senzorům být složitější a odesílat podrobnější data, dokonce i šifrovaná data pro bezpečné senzory. Jedním z příkladů je kamera. Jedná se o senzor, který zachycuje obraz a odesílá jej jako digitální data obsahující tento obraz, obvykle v komprimovaném formátu, jako je JPEG, aby jej mohlo číst IoT zařízení. Může dokonce streamovat video zachycením obrazů a odesíláním buď kompletního obrazu snímek po snímku, nebo komprimovaného video streamu.
+
+## Co jsou akční členy?
+
+Akční členy jsou opakem senzorů - převádějí elektrický signál z vašeho IoT zařízení na interakci s fyzickým světem, jako je vyzařování světla nebo zvuku, nebo pohyb motoru.
+
+Mezi běžné akční členy patří:
+
+* LED - vyzařují světlo, když jsou zapnuté.
+* Reproduktor - vyzařují zvuk na základě signálu, od jednoduchého bzučáku po reproduktor, který může přehrávat hudbu.
+* Krokový motor - převádí signál na definované množství rotace, například otočení knoflíku o 90°.
+* Relé - jedná se o spínače, které lze zapnout nebo vypnout elektrickým signálem. Umožňují malé napětí z IoT zařízení zapnout větší napětí.
+* Obrazovky - jedná se o složitější akční členy, které zobrazují informace na více segmentovém displeji. Obrazovky se liší od jednoduchých LED displejů po vysokorozlišení video monitory.
+
+✅ Udělejte si průzkum. Jaké akční členy má váš telefon?
+
+## Použití akčního členu
+
+Postupujte podle příslušného návodu níže a přidejte akční člen do svého IoT zařízení, který bude ovládán senzorem, abyste vytvořili IoT noční světlo. Bude shromažďovat úrovně světla ze světelného senzoru a používat akční člen ve formě LED diody k vyzařování světla, když je detekovaná úroveň světla příliš nízká.
+
+
+
+* [Arduino - Wio Terminal](wio-terminal-actuator.md)
+* [Jednodeskový počítač - Raspberry Pi](pi-actuator.md)
+* [Jednodeskový počítač - Virtuální zařízení](virtual-device-actuator.md)
+
+## Typy akčních členů
+
+Stejně jako senzory, akční členy mohou být buď analogové, nebo digitální.
+
+### Analogové akční členy
+
+Analogové akční členy přijímají analogový signál a převádějí jej na nějakou formu interakce, kde se interakce mění na základě dodaného napětí.
+
+Jedním z příkladů je stmívatelné světlo, například to, které můžete mít doma. Množství dodaného napětí určuje, jak jasně svítí.
+
+
+Stejně jako u senzorů, skutečné IoT zařízení pracuje s digitálními signály, nikoli analogovými. To znamená, že k odeslání analogového signálu potřebuje IoT zařízení převodník z digitálního na analogový signál (DAC), buď přímo na IoT zařízení, nebo na připojovací desce. Ten převede 0 a 1 z IoT zařízení na analogové napětí, které může aktuátor využít.
+
+✅ Co si myslíte, že se stane, pokud IoT zařízení pošle vyšší napětí, než aktuátor zvládne?
+⛔️ NEZKOUŠEJTE to.
+
+#### Pulzně šířková modulace
+
+Další možností, jak převést digitální signály z IoT zařízení na analogový signál, je pulzně šířková modulace (PWM). Ta zahrnuje odesílání mnoha krátkých digitálních impulsů, které se chovají jako analogový signál.
+
+Například pomocí PWM můžete ovládat rychlost motoru.
+
+Představte si, že ovládáte motor s napájením 5V. Pošlete krátký impuls do motoru, přepnete napětí na vysoké (5V) na dvě setiny sekundy (0,02s). Během této doby se motor může otočit o jednu desetinu otáčky, tedy o 36°. Signál se poté na dvě setiny sekundy (0,02s) přeruší, čímž se odešle nízký signál (0V). Každý cyklus zapnutí a vypnutí trvá 0,04s. Cyklus se poté opakuje.
+
+
+
+To znamená, že za jednu sekundu máte 25 impulsů 5V o délce 0,02s, které otáčejí motorem, každý následovaný 0,02s pauzou 0V, kdy se motor neotáčí. Každý impuls otočí motor o jednu desetinu otáčky, což znamená, že motor dokončí 2,5 otáčky za sekundu. Použili jste digitální signál k otáčení motoru rychlostí 2,5 otáčky za sekundu, tedy 150 [otáček za minutu](https://wikipedia.org/wiki/Revolutions_per_minute) (nestandardní měření rychlosti otáčení).
+
+```output
+25 pulses per second x 0.1 rotations per pulse = 2.5 rotations per second
+2.5 rotations per second x 60 seconds in a minute = 150rpm
+```
+
+> 🎓 Když je PWM signál zapnutý polovinu času a vypnutý polovinu času, označuje se to jako [50% pracovní cyklus](https://wikipedia.org/wiki/Duty_cycle). Pracovní cykly se měří jako procento času, kdy je signál ve stavu zapnuto ve srovnání se stavem vypnuto.
+
+
+
+Rychlost motoru můžete změnit změnou délky impulsů. Například u stejného motoru můžete zachovat stejnou délku cyklu 0,04s, přičemž délku zapnutého impulsu zkrátíte na polovinu (0,01s) a délku vypnutého impulsu prodloužíte na 0,03s. Počet impulsů za sekundu (25) zůstává stejný, ale každý zapnutý impuls je poloviční. Poloviční impuls otočí motor o jednu dvacetinu otáčky, a při 25 impulsech za sekundu motor dokončí 1,25 otáčky za sekundu, tedy 75 otáček za minutu. Změnou délky impulsů digitálního signálu jste snížili rychlost analogového motoru na polovinu.
+
+```output
+25 pulses per second x 0.05 rotations per pulse = 1.25 rotations per second
+1.25 rotations per second x 60 seconds in a minute = 75rpm
+```
+
+✅ Jak byste zajistili plynulé otáčení motoru, zejména při nízkých rychlostech? Použili byste malý počet dlouhých impulsů s dlouhými pauzami, nebo mnoho velmi krátkých impulsů s velmi krátkými pauzami?
+
+> 💁 Některé senzory také používají PWM k převodu analogových signálů na digitální.
+
+> 🎓 Více o pulzně šířkové modulaci si můžete přečíst na [stránce o PWM na Wikipedii](https://wikipedia.org/wiki/Pulse-width_modulation).
+
+### Digitální aktuátory
+
+Digitální aktuátory, stejně jako digitální senzory, mají buď dva stavy ovládané vysokým nebo nízkým napětím, nebo mají vestavěný DAC, který dokáže převést digitální signál na analogový.
+
+Jednoduchým digitálním aktuátorem je LED dioda. Když zařízení pošle digitální signál 1, odešle se vysoké napětí, které LED diodu rozsvítí. Když se pošle digitální signál 0, napětí klesne na 0V a LED dioda se vypne.
+
+
+
+✅ Jaké další jednoduché dvoustavové aktuátory vás napadají? Jedním příkladem je solenoid, což je elektromagnet, který lze aktivovat k provádění úkonů, jako je pohyb závory dveří při zamykání/odemykání.
+
+Pokročilejší digitální aktuátory, jako jsou obrazovky, vyžadují, aby digitální data byla odesílána v určitých formátech. Obvykle jsou dodávány s knihovnami, které usnadňují odesílání správných dat pro jejich ovládání.
+
+---
+
+## 🚀 Výzva
+
+Výzva v posledních dvou lekcích byla sepsat co nejvíce IoT zařízení, která máte doma, ve škole nebo na pracovišti, a rozhodnout, zda jsou postavena na mikrokontrolérech, jednodeskových počítačích nebo dokonce na jejich kombinaci.
+
+U každého zařízení, které jste uvedli, jaké senzory a aktuátory jsou k němu připojeny? Jaký je účel každého senzoru a aktuátoru připojeného k těmto zařízením?
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/6)
+
+## Přehled & Samostudium
+
+* Přečtěte si o elektřině a obvodech na [ThingLearn](http://thinglearn.jenlooper.com/curriculum/).
+* Přečtěte si o různých typech teplotních senzorů v [průvodci teplotními senzory od Seeed Studios](https://www.seeedstudio.com/blog/2019/10/14/temperature-sensors-for-arduino-projects/)
+* Přečtěte si o LED diodách na [stránce o LED diodách na Wikipedii](https://wikipedia.org/wiki/Light-emitting_diode)
+
+## Úkol
+
+[Prozkoumejte senzory a aktuátory](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/assignment.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/assignment.md
new file mode 100644
index 00000000..c41c4bba
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/assignment.md
@@ -0,0 +1,31 @@
+
+# Výzkum senzorů a akčních členů
+
+## Pokyny
+
+Tato lekce se zabývala senzory a akčními členy. Prozkoumejte a popište jeden senzor a jeden akční člen, které lze použít s IoT vývojovou sadou, včetně:
+
+* Co dělá
+* Jaká elektronika/hardware je uvnitř
+* Zda je analogový nebo digitální
+* Jaké jsou jednotky a rozsah vstupů nebo měření
+
+## Hodnoticí kritéria
+
+| Kritéria | Vynikající | Dostatečné | Vyžaduje zlepšení |
+| -------- | ---------- | ---------- | ----------------- |
+| Popis senzoru | Popsán senzor včetně podrobností ke všem 4 výše uvedeným bodům. | Popsán senzor, ale pouze s podrobnostmi ke 2-3 výše uvedeným bodům. | Popsán senzor, ale pouze s podrobnostmi k 1 výše uvedenému bodu. |
+| Popis akčního členu | Popsán akční člen včetně podrobností ke všem 4 výše uvedeným bodům. | Popsán akční člen, ale pouze s podrobnostmi ke 2-3 výše uvedeným bodům. | Popsán akční člen, ale pouze s podrobnostmi k 1 výše uvedenému bodu. |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/pi-actuator.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/pi-actuator.md
new file mode 100644
index 00000000..3bbbdafd
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/pi-actuator.md
@@ -0,0 +1,130 @@
+
+# Vytvořte noční světlo - Raspberry Pi
+
+V této části lekce přidáte LED diodu k vašemu Raspberry Pi a použijete ji k vytvoření nočního světla.
+
+## Hardware
+
+Noční světlo nyní potřebuje akční člen.
+
+Akčním členem je **LED**, [světelná dioda](https://wikipedia.org/wiki/Light-emitting_diode), která vyzařuje světlo, když jí prochází proud. Jedná se o digitální akční člen, který má dva stavy: zapnuto a vypnuto. Poslání hodnoty 1 zapne LED, zatímco hodnota 0 ji vypne. LED je externí Grove akční člen, který je třeba připojit k Grove Base hat na Raspberry Pi.
+
+Logika nočního světla v pseudokódu je:
+
+```output
+Check the light level.
+If the light is less than 300
+ Turn the LED on
+Otherwise
+ Turn the LED off
+```
+
+### Připojte LED
+
+Grove LED je dodávána jako modul s výběrem LED diod, což vám umožňuje zvolit barvu.
+
+#### Úkol - připojte LED
+
+Připojte LED.
+
+
+
+1. Vyberte svou oblíbenou LED diodu a vložte její nožičky do dvou otvorů na modulu LED.
+
+ LED diody jsou světelné diody a diody jsou elektronické součástky, které mohou přenášet proud pouze jedním směrem. To znamená, že LED musí být připojena správným směrem, jinak nebude fungovat.
+
+ Jedna z nožiček LED je kladný pin, druhá je záporný pin. LED není dokonale kulatá a na jedné straně je mírně plošší. Mírně plošší strana je záporný pin. Když připojujete LED k modulu, ujistěte se, že pin u zaoblené strany je připojen k zásuvce označené **+** na vnější straně modulu, a plošší strana je připojena k zásuvce blíže ke středu modulu.
+
+1. Modul LED má otočný knoflík, který umožňuje ovládat jas. Na začátku jej otočte úplně nahoru proti směru hodinových ručiček pomocí malého křížového šroubováku.
+
+1. Vložte jeden konec Grove kabelu do zásuvky na modulu LED. Kabel lze vložit pouze jedním směrem.
+
+1. S vypnutým Raspberry Pi připojte druhý konec Grove kabelu k digitální zásuvce označené **D5** na Grove Base hat připojeném k Pi. Tato zásuvka je druhá zleva v řadě zásuvek vedle GPIO pinů.
+
+
+
+## Naprogramujte noční světlo
+
+Noční světlo nyní může být naprogramováno pomocí Grove světelného senzoru a Grove LED.
+
+### Úkol - naprogramujte noční světlo
+
+Naprogramujte noční světlo.
+
+1. Zapněte Pi a počkejte, až se spustí.
+
+1. Otevřete projekt nočního světla ve VS Code, který jste vytvořili v předchozí části tohoto úkolu, buď přímo na Pi, nebo připojením pomocí rozšíření Remote SSH.
+
+1. Přidejte následující kód do souboru `app.py`, abyste importovali požadovanou knihovnu. Tento kód by měl být přidán na začátek, pod ostatní řádky `import`.
+
+ ```python
+ from grove.grove_led import GroveLed
+ ```
+
+ Příkaz `from grove.grove_led import GroveLed` importuje `GroveLed` z Grove Python knihoven. Tato knihovna obsahuje kód pro interakci s Grove LED.
+
+1. Přidejte následující kód za deklaraci `light_sensor`, abyste vytvořili instanci třídy, která spravuje LED:
+
+ ```python
+ led = GroveLed(5)
+ ```
+
+ Řádek `led = GroveLed(5)` vytvoří instanci třídy `GroveLed`, která se připojuje k pinu **D5** - digitálnímu Grove pinu, ke kterému je LED připojena.
+
+ > 💁 Všechny zásuvky mají unikátní čísla pinů. Piny 0, 2, 4 a 6 jsou analogové piny, piny 5, 16, 18, 22, 24 a 26 jsou digitální piny.
+
+1. Přidejte kontrolu uvnitř smyčky `while` a před `time.sleep`, která kontroluje úroveň světla a zapíná nebo vypíná LED:
+
+ ```python
+ if light < 300:
+ led.on()
+ else:
+ led.off()
+ ```
+
+ Tento kód kontroluje hodnotu `light`. Pokud je tato hodnota menší než 300, volá metodu `on` třídy `GroveLed`, která posílá digitální hodnotu 1 do LED, čímž ji zapne. Pokud je hodnota světla větší nebo rovna 300, volá metodu `off`, která posílá digitální hodnotu 0 do LED, čímž ji vypne.
+
+ > 💁 Tento kód by měl být odsazen na stejnou úroveň jako řádek `print('Light level:', light)`, aby byl uvnitř smyčky while!
+
+ > 💁 Při posílání digitálních hodnot do akčních členů je hodnota 0 rovna 0V a hodnota 1 je maximální napětí pro zařízení. Pro Raspberry Pi s Grove senzory a akčními členy je napětí 1 rovno 3.3V.
+
+1. Z terminálu ve VS Code spusťte následující příkaz, abyste spustili svou Python aplikaci:
+
+ ```sh
+ python3 app.py
+ ```
+
+ Hodnoty světla budou vypsány do konzole.
+
+ ```output
+ pi@raspberrypi:~/nightlight $ python3 app.py
+ Light level: 634
+ Light level: 634
+ Light level: 634
+ Light level: 230
+ Light level: 104
+ Light level: 290
+ ```
+
+1. Zakryjte a odkryjte světelný senzor. Všimněte si, jak se LED rozsvítí, pokud je úroveň světla 300 nebo méně, a zhasne, když je úroveň světla větší než 300.
+
+ > 💁 Pokud se LED nerozsvítí, ujistěte se, že je připojena správným směrem a otočný knoflík je nastaven na plné zapnutí.
+
+
+
+> 💁 Tento kód najdete ve složce [code-actuator/pi](../../../../../1-getting-started/lessons/3-sensors-and-actuators/code-actuator/pi).
+
+😀 Program vašeho nočního světla byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/pi-sensor.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/pi-sensor.md
new file mode 100644
index 00000000..22838751
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/pi-sensor.md
@@ -0,0 +1,110 @@
+
+# Vytvořte noční světlo - Raspberry Pi
+
+V této části lekce přidáte k Raspberry Pi světelný senzor.
+
+## Hardware
+
+Senzor pro tuto lekci je **světelný senzor**, který využívá [fotodiodu](https://wikipedia.org/wiki/Photodiode) k převodu světla na elektrický signál. Jedná se o analogový senzor, který posílá celočíselnou hodnotu od 0 do 1 000, což indikuje relativní množství světla, které neodpovídá žádné standardní jednotce měření, jako je například [lux](https://wikipedia.org/wiki/Lux).
+
+Světelný senzor je externí Grove senzor a musí být připojen k Grove Base hat na Raspberry Pi.
+
+### Připojte světelný senzor
+
+Grove světelný senzor, který se používá k detekci úrovní světla, musí být připojen k Raspberry Pi.
+
+#### Úkol - připojte světelný senzor
+
+Připojte světelný senzor.
+
+
+
+1. Zasuňte jeden konec Grove kabelu do konektoru na modulu světelného senzoru. Kabel lze zasunout pouze jedním způsobem.
+
+1. S vypnutým Raspberry Pi připojte druhý konec Grove kabelu do analogového konektoru označeného **A0** na Grove Base hat připojeném k Pi. Tento konektor je druhý zprava v řadě konektorů vedle GPIO pinů.
+
+
+
+## Naprogramujte světelný senzor
+
+Zařízení nyní může být naprogramováno pomocí Grove světelného senzoru.
+
+### Úkol - naprogramujte světelný senzor
+
+Naprogramujte zařízení.
+
+1. Zapněte Raspberry Pi a počkejte, až se spustí.
+
+1. Otevřete projekt nočního světla ve VS Code, který jste vytvořili v předchozí části tohoto úkolu, buď přímo na Pi, nebo pomocí rozšíření Remote SSH.
+
+1. Otevřete soubor `app.py` a odstraňte z něj veškerý kód.
+
+1. Přidejte následující kód do souboru `app.py` pro import potřebných knihoven:
+
+ ```python
+ import time
+ from grove.grove_light_sensor_v1_2 import GroveLightSensor
+ ```
+
+ Příkaz `import time` importuje modul `time`, který bude použit později v tomto úkolu.
+
+ Příkaz `from grove.grove_light_sensor_v1_2 import GroveLightSensor` importuje `GroveLightSensor` z Grove Python knihoven. Tato knihovna obsahuje kód pro interakci s Grove světelným senzorem a byla nainstalována globálně během nastavení Pi.
+
+1. Přidejte následující kód za výše uvedený kód pro vytvoření instance třídy, která spravuje světelný senzor:
+
+ ```python
+ light_sensor = GroveLightSensor(0)
+ ```
+
+ Řádek `light_sensor = GroveLightSensor(0)` vytvoří instanci třídy `GroveLightSensor`, která se připojuje k pinu **A0** - analogovému Grove pinu, ke kterému je světelný senzor připojen.
+
+1. Přidejte nekonečnou smyčku za výše uvedený kód pro dotazování hodnoty světelného senzoru a její výpis do konzole:
+
+ ```python
+ while True:
+ light = light_sensor.light
+ print('Light level:', light)
+ ```
+
+ Tento kód přečte aktuální úroveň světla na stupnici 0-1 023 pomocí vlastnosti `light` třídy `GroveLightSensor`. Tato vlastnost čte analogovou hodnotu z pinu. Tato hodnota je poté vypsána do konzole.
+
+1. Přidejte na konec `loop` krátkou pauzu o délce jedné sekundy, protože úrovně světla není třeba kontrolovat nepřetržitě. Pauza snižuje spotřebu energie zařízení.
+
+ ```python
+ time.sleep(1)
+ ```
+
+1. Z terminálu ve VS Code spusťte následující příkaz pro spuštění vašeho Python programu:
+
+ ```sh
+ python3 app.py
+ ```
+
+ Hodnoty světla budou vypsány do konzole. Zakryjte a odkryjte světelný senzor a hodnoty se změní:
+
+ ```output
+ pi@raspberrypi:~/nightlight $ python3 app.py
+ Light level: 634
+ Light level: 634
+ Light level: 634
+ Light level: 230
+ Light level: 104
+ Light level: 290
+ ```
+
+> 💁 Tento kód najdete ve složce [code-sensor/pi](../../../../../1-getting-started/lessons/3-sensors-and-actuators/code-sensor/pi).
+
+😀 Přidání senzoru do vašeho programu nočního světla bylo úspěšné!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/virtual-device-actuator.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/virtual-device-actuator.md
new file mode 100644
index 00000000..f69d158b
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/virtual-device-actuator.md
@@ -0,0 +1,124 @@
+
+# Vytvořte noční světlo - Virtuální IoT hardware
+
+V této části lekce přidáte LED diodu do svého virtuálního IoT zařízení a použijete ji k vytvoření nočního světla.
+
+## Virtuální hardware
+
+Noční světlo potřebuje jeden akční člen, vytvořený v aplikaci CounterFit.
+
+Akční člen je **LED dioda**. U fyzického IoT zařízení by to byla [světlo emitující dioda](https://wikipedia.org/wiki/Light-emitting_diode), která vyzařuje světlo, když jí prochází proud. Toto je digitální akční člen, který má 2 stavy: zapnuto a vypnuto. Poslání hodnoty 1 zapne LED diodu, a hodnoty 0 ji vypne.
+
+Logika nočního světla v pseudokódu je:
+
+```output
+Check the light level.
+If the light is less than 300
+ Turn the LED on
+Otherwise
+ Turn the LED off
+```
+
+### Přidání akčního členu do CounterFit
+
+Pro použití virtuální LED diody ji musíte přidat do aplikace CounterFit.
+
+#### Úkol - přidání akčního členu do CounterFit
+
+Přidejte LED diodu do aplikace CounterFit.
+
+1. Ujistěte se, že webová aplikace CounterFit běží z předchozí části tohoto úkolu. Pokud ne, spusťte ji a znovu přidejte světelný senzor.
+
+1. Vytvořte LED diodu:
+
+ 1. V poli *Create actuator* v panelu *Actuator* rozbalte pole *Actuator type* a vyberte *LED*.
+
+ 1. Nastavte *Pin* na *5*.
+
+ 1. Vyberte tlačítko **Add** pro vytvoření LED diody na pinu 5.
+
+ 
+
+ LED dioda bude vytvořena a objeví se v seznamu akčních členů.
+
+ 
+
+ Jakmile je LED dioda vytvořena, můžete změnit její barvu pomocí výběru *Color*. Vyberte tlačítko **Set** pro změnu barvy po jejím výběru.
+
+### Naprogramování nočního světla
+
+Noční světlo nyní může být naprogramováno pomocí světelného senzoru a LED diody v CounterFit.
+
+#### Úkol - naprogramování nočního světla
+
+Naprogramujte noční světlo.
+
+1. Otevřete projekt nočního světla ve VS Code, který jste vytvořili v předchozí části tohoto úkolu. Pokud je to nutné, ukončete a znovu vytvořte terminál, aby běžel s použitím virtuálního prostředí.
+
+1. Otevřete soubor `app.py`.
+
+1. Přidejte následující kód do souboru `app.py` pro import požadované knihovny. Tento kód by měl být přidán na začátek, pod ostatní řádky `import`.
+
+ ```python
+ from counterfit_shims_grove.grove_led import GroveLed
+ ```
+
+ Příkaz `from counterfit_shims_grove.grove_led import GroveLed` importuje `GroveLed` z Python knihoven CounterFit Grove shim. Tato knihovna obsahuje kód pro interakci s LED diodou vytvořenou v aplikaci CounterFit.
+
+1. Přidejte následující kód za deklaraci `light_sensor` pro vytvoření instance třídy, která spravuje LED diodu:
+
+ ```python
+ led = GroveLed(5)
+ ```
+
+ Řádek `led = GroveLed(5)` vytvoří instanci třídy `GroveLed`, která se připojuje k pinu **5** - CounterFit Grove pinu, ke kterému je LED dioda připojena.
+
+1. Přidejte kontrolu uvnitř smyčky `while`, před `time.sleep`, pro kontrolu úrovní světla a zapnutí nebo vypnutí LED diody:
+
+ ```python
+ if light < 300:
+ led.on()
+ else:
+ led.off()
+ ```
+
+ Tento kód kontroluje hodnotu `light`. Pokud je tato hodnota menší než 300, volá metodu `on` třídy `GroveLed`, která pošle digitální hodnotu 1 do LED diody, čímž ji zapne. Pokud je hodnota světla větší nebo rovna 300, volá metodu `off`, která pošle digitální hodnotu 0 do LED diody, čímž ji vypne.
+
+ > 💁 Tento kód by měl být odsazen na stejnou úroveň jako řádek `print('Light level:', light)`, aby byl uvnitř smyčky while!
+
+1. Z terminálu ve VS Code spusťte následující příkaz pro spuštění vaší Python aplikace:
+
+ ```sh
+ python3 app.py
+ ```
+
+ Hodnoty světla budou vypsány do konzole.
+
+ ```output
+ (.venv) ➜ GroveTest python3 app.py
+ Light level: 143
+ Light level: 244
+ Light level: 246
+ Light level: 253
+ ```
+
+1. Změňte nastavení *Value* nebo *Random* pro změnu úrovně světla nad a pod 300. LED dioda se bude zapínat a vypínat.
+
+
+
+> 💁 Tento kód najdete ve složce [code-actuator/virtual-device](../../../../../1-getting-started/lessons/3-sensors-and-actuators/code-actuator/virtual-device).
+
+😀 Program vašeho nočního světla byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/virtual-device-sensor.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/virtual-device-sensor.md
new file mode 100644
index 00000000..90a16905
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/virtual-device-sensor.md
@@ -0,0 +1,124 @@
+
+# Vytvořte noční světlo - Virtuální IoT hardware
+
+V této části lekce přidáte světelný senzor do svého virtuálního IoT zařízení.
+
+## Virtuální hardware
+
+Noční světlo potřebuje jeden senzor, který vytvoříte v aplikaci CounterFit.
+
+Tímto senzorem je **světelný senzor**. U fyzického IoT zařízení by to byla [fotodioda](https://wikipedia.org/wiki/Photodiode), která převádí světlo na elektrický signál. Světelné senzory jsou analogové senzory, které posílají celočíselnou hodnotu označující relativní množství světla. Tato hodnota není vázána na žádnou standardní jednotku měření, jako je například [lux](https://wikipedia.org/wiki/Lux).
+
+### Přidejte senzory do CounterFit
+
+Pro použití virtuálního světelného senzoru je třeba jej přidat do aplikace CounterFit.
+
+#### Úkol - přidejte senzory do CounterFit
+
+Přidejte světelný senzor do aplikace CounterFit.
+
+1. Ujistěte se, že webová aplikace CounterFit běží z předchozí části tohoto úkolu. Pokud neběží, spusťte ji.
+
+1. Vytvořte světelný senzor:
+
+ 1. V poli *Create sensor* v panelu *Sensors* rozbalte pole *Sensor type* a vyberte *Light*.
+
+ 1. Nechte *Units* nastavené na *NoUnits*.
+
+ 1. Ujistěte se, že *Pin* je nastaven na *0*.
+
+ 1. Klikněte na tlačítko **Add**, abyste vytvořili světelný senzor na pinu 0.
+
+ 
+
+ Světelný senzor bude vytvořen a objeví se v seznamu senzorů.
+
+ 
+
+## Naprogramujte světelný senzor
+
+Zařízení nyní může být naprogramováno tak, aby používalo vestavěný světelný senzor.
+
+### Úkol - naprogramujte světelný senzor
+
+Naprogramujte zařízení.
+
+1. Otevřete projekt nočního světla ve VS Code, který jste vytvořili v předchozí části tohoto úkolu. Pokud je to nutné, ukončete a znovu vytvořte terminál, aby běžel s použitím virtuálního prostředí.
+
+1. Otevřete soubor `app.py`.
+
+1. Přidejte následující kód na začátek souboru `app.py` k ostatním příkazům `import`, abyste připojili potřebné knihovny:
+
+ ```python
+ import time
+ from counterfit_shims_grove.grove_light_sensor_v1_2 import GroveLightSensor
+ ```
+
+ Příkaz `import time` importuje modul `time` z Pythonu, který bude použit později v tomto úkolu.
+
+ Příkaz `from counterfit_shims_grove.grove_light_sensor_v1_2 import GroveLightSensor` importuje `GroveLightSensor` z knihoven CounterFit Grove shim pro Python. Tato knihovna obsahuje kód pro interakci se světelným senzorem vytvořeným v aplikaci CounterFit.
+
+1. Přidejte následující kód na konec souboru, abyste vytvořili instance tříd, které spravují světelný senzor:
+
+ ```python
+ light_sensor = GroveLightSensor(0)
+ ```
+
+ Řádek `light_sensor = GroveLightSensor(0)` vytvoří instanci třídy `GroveLightSensor`, která se připojí k pinu **0** - CounterFit Grove pinu, ke kterému je připojen světelný senzor.
+
+1. Přidejte nekonečnou smyčku za výše uvedený kód, která bude číst hodnotu světelného senzoru a vypisovat ji do konzole:
+
+ ```python
+ while True:
+ light = light_sensor.light
+ print('Light level:', light)
+ ```
+
+ Tento kód přečte aktuální úroveň světla pomocí vlastnosti `light` třídy `GroveLightSensor`. Tato vlastnost čte analogovou hodnotu z pinu. Tato hodnota je poté vypsána do konzole.
+
+1. Přidejte na konec smyčky `while` krátkou pauzu o délce jedné sekundy, protože úroveň světla není třeba kontrolovat nepřetržitě. Pauza snižuje spotřebu energie zařízení.
+
+ ```python
+ time.sleep(1)
+ ```
+
+1. V terminálu VS Code spusťte následující příkaz pro spuštění vaší Python aplikace:
+
+ ```sh
+ python3 app.py
+ ```
+
+ Hodnoty světla budou vypsány do konzole. Zpočátku bude tato hodnota 0.
+
+1. V aplikaci CounterFit změňte hodnotu světelného senzoru, kterou aplikace přečte. Můžete to udělat jedním ze dvou způsobů:
+
+ * Zadejte číslo do pole *Value* pro světelný senzor a poté klikněte na tlačítko **Set**. Číslo, které zadáte, bude hodnota vrácená senzorem.
+
+ * Zaškrtněte políčko *Random* a zadejte hodnoty *Min* a *Max*, poté klikněte na tlačítko **Set**. Při každém čtení hodnoty senzoru bude přečteno náhodné číslo mezi *Min* a *Max*.
+
+ Hodnoty, které nastavíte, budou vypsány do konzole. Změňte *Value* nebo nastavení *Random*, aby se hodnota měnila.
+
+ ```output
+ (.venv) ➜ GroveTest python3 app.py
+ Light level: 143
+ Light level: 244
+ Light level: 246
+ Light level: 253
+ ```
+
+> 💁 Tento kód najdete ve složce [code-sensor/virtual-device](../../../../../1-getting-started/lessons/3-sensors-and-actuators/code-sensor/virtual-device).
+
+😀 Program vašeho nočního světla byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/wio-terminal-actuator.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/wio-terminal-actuator.md
new file mode 100644
index 00000000..f08fa7b6
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/wio-terminal-actuator.md
@@ -0,0 +1,124 @@
+
+# Vytvořte noční světlo - Wio Terminal
+
+V této části lekce přidáte k Wio Terminal LED diodu a použijete ji k vytvoření nočního světla.
+
+## Hardware
+
+Noční světlo nyní potřebuje akční člen.
+
+Akčním členem je **LED**, [svítivá dioda](https://wikipedia.org/wiki/Light-emitting_diode), která vydává světlo, když jí prochází proud. Jedná se o digitální akční člen, který má dva stavy: zapnuto a vypnuto. Odesláním hodnoty 1 se LED zapne, hodnotou 0 se vypne. Jedná se o externí Grove akční člen, který je třeba připojit k Wio Terminal.
+
+Logika nočního světla v pseudokódu je:
+
+```output
+Check the light level.
+If the light is less than 300
+ Turn the LED on
+Otherwise
+ Turn the LED off
+```
+
+### Připojte LED
+
+Grove LED je dodávána jako modul s výběrem LED diod, což vám umožňuje zvolit si barvu.
+
+#### Úkol - připojte LED
+
+Připojte LED.
+
+
+
+1. Vyberte si svou oblíbenou LED a vložte její nožičky do dvou otvorů na modulu LED.
+
+ LED diody jsou svítivé diody a diody jsou elektronické součástky, které mohou vést proud pouze jedním směrem. To znamená, že LED musí být připojena správným způsobem, jinak nebude fungovat.
+
+ Jedna z nožiček LED je kladný pin, druhá je záporný pin. LED není dokonale kulatá a na jedné straně je mírně plošší. Mírně plošší strana je záporný pin. Když připojujete LED k modulu, ujistěte se, že pin na zaoblené straně je připojen k zásuvce označené **+** na vnější straně modulu, a plošší strana je připojena k zásuvce blíže ke středu modulu.
+
+1. Modul LED má otočný knoflík, který umožňuje ovládat jas. Nejprve jej otočte úplně nahoru otáčením proti směru hodinových ručiček, dokud to půjde, pomocí malého křížového šroubováku.
+
+1. Zasuňte jeden konec Grove kabelu do zásuvky na modulu LED. Půjde to pouze jedním směrem.
+
+1. S Wio Terminal odpojeným od počítače nebo jiného zdroje napájení připojte druhý konec Grove kabelu k pravé Grove zásuvce na Wio Terminal, když se díváte na obrazovku. Jedná se o zásuvku nejdále od tlačítka napájení.
+
+ > 💁 Pravá Grove zásuvka může být použita s analogovými nebo digitálními senzory a akčními členy. Levá zásuvka je pouze pro digitální senzory a akční členy.
+
+
+
+## Naprogramujte noční světlo
+
+Noční světlo nyní může být naprogramováno pomocí vestavěného světelného senzoru a Grove LED.
+
+### Úkol - naprogramujte noční světlo
+
+Naprogramujte noční světlo.
+
+1. Otevřete projekt nočního světla ve VS Code, který jste vytvořili v předchozí části tohoto úkolu.
+
+1. Přidejte následující řádek na konec funkce `setup`:
+
+ ```cpp
+ pinMode(D0, OUTPUT);
+ ```
+
+ Tento řádek konfiguruje pin používaný ke komunikaci s LED přes Grove port.
+
+ Pin `D0` je digitální pin pro pravou Grove zásuvku. Tento pin je nastaven na `OUTPUT`, což znamená, že je připojen k akčnímu členu a data budou na pin zapisována.
+
+1. Přidejte následující kód těsně před `delay` ve funkci loop:
+
+ ```cpp
+ if (light < 300)
+ {
+ digitalWrite(D0, HIGH);
+ }
+ else
+ {
+ digitalWrite(D0, LOW);
+ }
+ ```
+
+ Tento kód kontroluje hodnotu `light`. Pokud je tato hodnota menší než 300, odešle hodnotu `HIGH` na digitální pin `D0`. Tato hodnota `HIGH` je hodnota 1, která zapne LED. Pokud je hodnota světla větší nebo rovna 300, odešle se hodnota `LOW` (0), která LED vypne.
+
+ > 💁 Při odesílání digitálních hodnot akčním členům je hodnota LOW 0V a hodnota HIGH je maximální napětí pro zařízení. Pro Wio Terminal je napětí HIGH 3,3V.
+
+1. Znovu připojte Wio Terminal k počítači a nahrajte nový kód, jak jste to udělali dříve.
+
+1. Připojte Serial Monitor. Hodnoty světla budou vypisovány do terminálu.
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem101 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Light value: 4
+ Light value: 5
+ Light value: 4
+ Light value: 158
+ Light value: 343
+ Light value: 348
+ Light value: 344
+ ```
+
+1. Zakryjte a odkryjte světelný senzor. Všimněte si, jak se LED rozsvítí, pokud je úroveň světla 300 nebo méně, a zhasne, když je úroveň světla větší než 300.
+
+
+
+> 💁 Tento kód najdete ve složce [code-actuator/wio-terminal](../../../../../1-getting-started/lessons/3-sensors-and-actuators/code-actuator/wio-terminal).
+
+😀 Váš program pro noční světlo byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/wio-terminal-sensor.md b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/wio-terminal-sensor.md
new file mode 100644
index 00000000..a56c8e8f
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/3-sensors-and-actuators/wio-terminal-sensor.md
@@ -0,0 +1,87 @@
+
+# Přidání senzoru - Wio Terminal
+
+V této části lekce použijete světelný senzor na vašem Wio Terminalu.
+
+## Hardware
+
+Senzor pro tuto lekci je **světelný senzor**, který využívá [fotodiodu](https://wikipedia.org/wiki/Photodiode) k převodu světla na elektrický signál. Jedná se o analogový senzor, který posílá celočíselnou hodnotu od 0 do 1 023, což představuje relativní množství světla, které není převedeno na žádnou standardní jednotku měření, jako je například [lux](https://wikipedia.org/wiki/Lux).
+
+Světelný senzor je zabudován do Wio Terminalu a je viditelný skrz průhledné plastové okénko na zadní straně.
+
+
+
+## Naprogramování světelného senzoru
+
+Zařízení nyní může být naprogramováno tak, aby využívalo zabudovaný světelný senzor.
+
+### Úkol
+
+Naprogramujte zařízení.
+
+1. Otevřete projekt nočního světla ve VS Code, který jste vytvořili v předchozí části tohoto úkolu.
+
+1. Přidejte následující řádek na konec funkce `setup`:
+
+ ```cpp
+ pinMode(WIO_LIGHT, INPUT);
+ ```
+
+ Tento řádek konfiguruje piny používané ke komunikaci s hardwarovým senzorem.
+
+ Pin `WIO_LIGHT` je číslo GPIO pinu připojeného k vestavěnému světelnému senzoru. Tento pin je nastaven na `INPUT`, což znamená, že je připojen k senzoru a data budou z pinu čtena.
+
+1. Smažte obsah funkce `loop`.
+
+1. Přidejte následující kód do nyní prázdné funkce `loop`.
+
+ ```cpp
+ int light = analogRead(WIO_LIGHT);
+ Serial.print("Light value: ");
+ Serial.println(light);
+ ```
+
+ Tento kód čte analogovou hodnotu z pinu `WIO_LIGHT`. Čte hodnotu od 0 do 1 023 z vestavěného světelného senzoru. Tato hodnota je poté odeslána na sériový port, takže ji můžete přečíst v Serial Monitoru, když tento kód běží. `Serial.print` zapisuje text bez nového řádku na konci, takže každý řádek začne s `Light value:` a skončí skutečnou hodnotou světla.
+
+1. Přidejte malou prodlevu jedné sekundy (1 000 ms) na konec funkce `loop`, protože úroveň světla není třeba kontrolovat nepřetržitě. Prodleva snižuje spotřebu energie zařízení.
+
+ ```cpp
+ delay(1000);
+ ```
+
+1. Znovu připojte Wio Terminal k vašemu počítači a nahrajte nový kód stejným způsobem jako předtím.
+
+1. Připojte Serial Monitor. Hodnoty světla budou vypsány na terminál. Zakryjte a odkryjte světelný senzor na zadní straně Wio Terminalu a hodnoty se budou měnit.
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem101 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Light value: 4
+ Light value: 5
+ Light value: 4
+ Light value: 158
+ Light value: 343
+ Light value: 348
+ Light value: 344
+ ```
+
+> 💁 Tento kód najdete ve složce [code-sensor/wio-terminal](../../../../../1-getting-started/lessons/3-sensors-and-actuators/code-sensor/wio-terminal).
+
+😀 Přidání senzoru do vašeho programu nočního světla bylo úspěšné!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/README.md b/translations/cs/1-getting-started/lessons/4-connect-internet/README.md
new file mode 100644
index 00000000..4374b1df
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/README.md
@@ -0,0 +1,466 @@
+
+# Připojte své zařízení k internetu
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+Tato lekce byla součástí série [Hello IoT](https://youtube.com/playlist?list=PLmsFUfdnGr3xRts0TIwyaHyQuHaNQcb6-) od [Microsoft Reactor](https://developer.microsoft.com/reactor/?WT.mc_id=academic-17441-jabenn). Lekce byla rozdělena do dvou videí - hodinové lekce a hodinového "office hour", kde se podrobněji probíraly části lekce a odpovídalo se na otázky.
+
+[](https://youtu.be/O4dd172mZhs)
+
+[](https://youtu.be/j-cVCzRDE2Q)
+
+> 🎥 Klikněte na obrázky výše pro zhlédnutí videí
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/7)
+
+## Úvod
+
+Písmeno **I** v IoT znamená **Internet** - cloudová konektivita a služby, které umožňují mnoho funkcí IoT zařízení, od sběru měření ze senzorů připojených k zařízení až po odesílání zpráv pro ovládání akčních členů. IoT zařízení se obvykle připojují k jedné cloudové IoT službě pomocí standardního komunikačního protokolu, a tato služba je propojena se zbytkem vaší IoT aplikace, od AI služeb pro chytré rozhodování na základě dat až po webové aplikace pro ovládání nebo reportování.
+
+> 🎓 Data získaná ze senzorů a odeslaná do cloudu se nazývají telemetrie.
+
+IoT zařízení mohou přijímat zprávy z cloudu. Tyto zprávy často obsahují příkazy - tedy instrukce k provedení akce buď interně (například restart nebo aktualizace firmwaru), nebo pomocí akčního členu (například zapnutí světla).
+
+Tato lekce představuje některé komunikační protokoly, které IoT zařízení mohou používat k připojení do cloudu, a typy dat, která mohou odesílat nebo přijímat. Také si prakticky vyzkoušíte obě možnosti, přidáte internetové ovládání ke svému nočnímu světlu a přesunete logiku ovládání LED do 'serverového' kódu běžícího lokálně.
+
+V této lekci se zaměříme na:
+
+* [Komunikační protokoly](../../../../../1-getting-started/lessons/4-connect-internet)
+* [Message Queueing Telemetry Transport (MQTT)](../../../../../1-getting-started/lessons/4-connect-internet)
+* [Telemetrie](../../../../../1-getting-started/lessons/4-connect-internet)
+* [Příkazy](../../../../../1-getting-started/lessons/4-connect-internet)
+
+## Komunikační protokoly
+
+Existuje několik populárních komunikačních protokolů, které IoT zařízení používají k komunikaci s internetem. Nejpopulárnější jsou založeny na publikování/přihlašování zpráv prostřednictvím nějakého typu brokeru. IoT zařízení se připojují k brokeru, publikují telemetrii a přihlašují se k příkazům. Cloudové služby se také připojují k brokeru, přihlašují se ke všem telemetrickým zprávám a publikují příkazy buď konkrétním zařízením, nebo skupinám zařízení.
+
+
+
+MQTT je nejpopulárnější komunikační protokol pro IoT zařízení a je pokryt v této lekci. Mezi další protokoly patří AMQP a HTTP/HTTPS.
+
+## Message Queueing Telemetry Transport (MQTT)
+
+[MQTT](http://mqtt.org) je lehký, otevřený standardní protokol pro zasílání zpráv mezi zařízeními. Byl navržen v roce 1999 pro monitorování ropovodů, než byl o 15 let později uvolněn jako otevřený standard společností IBM.
+
+MQTT má jednoho brokeru a více klientů. Všichni klienti se připojují k brokeru, který směruje zprávy relevantním klientům. Zprávy jsou směrovány pomocí pojmenovaných témat, místo aby byly odesílány přímo jednotlivým klientům. Klient může publikovat do tématu a všichni klienti, kteří se k tomuto tématu přihlásí, obdrží zprávu.
+
+
+
+✅ Udělejte si průzkum. Pokud máte mnoho IoT zařízení, jak zajistíte, že váš MQTT broker zvládne všechny zprávy?
+
+### Připojte své IoT zařízení k MQTT
+
+Prvním krokem k přidání internetového ovládání k vašemu nočnímu světlu je připojení k MQTT brokeru.
+
+#### Úkol
+
+Připojte své zařízení k MQTT brokeru.
+
+V této části lekce připojíte své IoT noční světlo k internetu, aby mohlo být ovládáno na dálku. Později v této lekci vaše IoT zařízení odešle telemetrickou zprávu přes MQTT na veřejný MQTT broker s úrovní světla, kde ji zachytí serverový kód, který napíšete. Tento kód zkontroluje úroveň světla a odešle zpět příkazovou zprávu zařízení, která mu řekne, aby zapnulo nebo vypnulo LED.
+
+Reálné využití takového nastavení by mohlo být sběr dat z více světelných senzorů před rozhodnutím o zapnutí světel na místě, kde je mnoho světel, například na stadionu. To by mohlo zabránit zapnutí světel, pokud by pouze jeden senzor byl zakrytý mraky nebo ptákem, ale ostatní senzory detekovaly dostatek světla.
+
+✅ Jaké další situace by vyžadovaly vyhodnocení dat z více senzorů před odesláním příkazů?
+
+Namísto řešení složitostí nastavení MQTT brokeru jako součást tohoto úkolu můžete použít veřejný testovací server, který provozuje [Eclipse Mosquitto](https://www.mosquitto.org), open-source MQTT broker. Tento testovací broker je veřejně dostupný na [test.mosquitto.org](https://test.mosquitto.org) a nevyžaduje nastavení účtu, což z něj činí skvělý nástroj pro testování MQTT klientů a serverů.
+
+> 💁 Tento testovací broker je veřejný a není zabezpečený. Kdokoliv může poslouchat, co publikujete, takže by neměl být používán s daty, která je třeba uchovat v soukromí.
+
+
+
+Postupujte podle relevantního kroku níže pro připojení vašeho zařízení k MQTT brokeru:
+
+* [Arduino - Wio Terminal](wio-terminal-mqtt.md)
+* [Jednodeskový počítač - Raspberry Pi/Virtual IoT device](single-board-computer-mqtt.md)
+
+### Podrobnější pohled na MQTT
+
+Témata mohou mít hierarchii a klienti se mohou přihlašovat k různým úrovním hierarchie pomocí zástupných znaků. Například můžete odesílat telemetrické zprávy o teplotě na téma `/telemetry/temperature` a zprávy o vlhkosti na téma `/telemetry/humidity`, a poté ve své cloudové aplikaci přihlásit k tématu `/telemetry/*`, abyste obdrželi jak teplotní, tak vlhkostní telemetrické zprávy.
+
+Zprávy mohou být odesílány s kvalitou služby (QoS), která určuje záruku doručení zprávy.
+
+* Nejvýše jednou - zpráva je odeslána pouze jednou a klient ani broker nepodnikají žádné další kroky k potvrzení doručení (odeslat a zapomenout).
+* Nejméně jednou - zpráva je opakovaně odesílána odesílatelem, dokud není obdrženo potvrzení (potvrzené doručení).
+* Přesně jednou - odesílatel a příjemce se zapojí do dvouúrovňového handshake, aby zajistili, že bude přijata pouze jedna kopie zprávy (zaručené doručení).
+
+✅ Jaké situace by vyžadovaly zaručené doručení zprávy oproti odeslání a zapomenutí?
+
+Ačkoliv název obsahuje Message Queueing (MQTT), protokol ve skutečnosti nepodporuje fronty zpráv. To znamená, že pokud se klient odpojí a poté znovu připojí, neobdrží zprávy odeslané během odpojení, kromě těch zpráv, které již začal zpracovávat pomocí procesu QoS. Zprávy mohou mít nastavenou příznakovou hodnotu "retained". Pokud je tato hodnota nastavena, MQTT broker uloží poslední zprávu odeslanou na téma s tímto příznakem a odešle ji všem klientům, kteří se později k tématu přihlásí. Tímto způsobem klienti vždy obdrží nejnovější zprávu.
+
+MQTT také podporuje funkci "keep alive", která kontroluje, zda je připojení stále aktivní během dlouhých mezer mezi zprávami.
+
+> 🦟 [Mosquitto od Eclipse Foundation](https://mosquitto.org) nabízí bezplatný MQTT broker, který si můžete sami spustit pro experimentování s MQTT, spolu s veřejným MQTT brokerem, který můžete použít k testování svého kódu, hostovaným na [test.mosquitto.org](https://test.mosquitto.org).
+
+MQTT připojení mohou být veřejná a otevřená, nebo šifrovaná a zabezpečená pomocí uživatelských jmen a hesel, nebo certifikátů.
+
+> 💁 MQTT komunikuje přes TCP/IP, stejný základní síťový protokol jako HTTP, ale na jiném portu. MQTT můžete také používat přes websockets pro komunikaci s webovými aplikacemi běžícími v prohlížeči, nebo v situacích, kdy firewally nebo jiné síťové pravidla blokují standardní MQTT připojení.
+
+## Telemetrie
+
+Slovo telemetrie pochází z řeckých kořenů a znamená měření na dálku. Telemetrie je akt sběru dat ze senzorů a jejich odesílání do cloudu.
+
+> 💁 Jedno z prvních telemetrických zařízení bylo vynalezeno ve Francii v roce 1874 a odesílalo v reálném čase informace o počasí a hloubce sněhu z Mont Blancu do Paříže. Používalo fyzické dráty, protože bezdrátové technologie tehdy nebyly dostupné.
+
+Podívejme se zpět na příklad chytrého termostatu z Lekce 1.
+
+
+
+Termostat má teplotní senzory pro sběr telemetrie. Pravděpodobně by měl jeden teplotní senzor zabudovaný a mohl by se připojit k více externím teplotním senzorům přes bezdrátový protokol, jako je [Bluetooth Low Energy](https://wikipedia.org/wiki/Bluetooth_Low_Energy) (BLE).
+
+Příklad telemetrických dat, která by mohl odesílat, by mohl být:
+
+| Název | Hodnota | Popis |
+| ---- | ----- | ----------- |
+| `thermostat_temperature` | 18°C | Teplota naměřená zabudovaným teplotním senzorem termostatu |
+| `livingroom_temperature` | 19°C | Teplota naměřená vzdáleným teplotním senzorem, který byl pojmenován `livingroom`, aby identifikoval místnost, ve které se nachází |
+| `bedroom_temperature` | 21°C | Teplota naměřená vzdáleným teplotním senzorem, který byl pojmenován `bedroom`, aby identifikoval místnost, ve které se nachází |
+
+Cloudová služba může poté použít tato telemetrická data k rozhodování o tom, jaké příkazy odeslat pro ovládání vytápění.
+
+### Odesílání telemetrie z vašeho IoT zařízení
+
+Dalším krokem k přidání internetového ovládání k vašemu nočnímu světlu je odesílání telemetrie úrovně světla na MQTT broker na telemetrické téma.
+
+#### Úkol - odesílání telemetrie z vašeho IoT zařízení
+
+Odesílejte telemetrii úrovně světla na MQTT broker.
+
+Data jsou odesílána kódovaná jako JSON - zkratka pro JavaScript Object Notation, standard pro kódování dat v textu pomocí klíč/hodnota párů.
+
+✅ Pokud jste se s JSON ještě nesetkali, můžete se o něm dozvědět více na [JSON.org dokumentaci](https://www.json.org/).
+
+Postupujte podle relevantního kroku níže pro odesílání telemetrie z vašeho zařízení na MQTT broker:
+
+* [Arduino - Wio Terminal](wio-terminal-telemetry.md)
+* [Jednodeskový počítač - Raspberry Pi/Virtual IoT device](single-board-computer-telemetry.md)
+
+### Přijímání telemetrie z MQTT brokeru
+
+Nemá smysl odesílat telemetrii, pokud na druhém konci není nic, co by ji poslouchalo. Telemetrie úrovně světla potřebuje něco, co ji bude poslouchat a zpracovávat data. Tento 'serverový' kód je typ kódu, který nasadíte na cloudovou službu jako součást větší IoT aplikace, ale zde budete tento kód spouštět lokálně na svém počítači (nebo na svém Raspberry Pi, pokud na něm přímo programujete). Serverový kód se skládá z Python aplikace, která poslouchá telemetrické zprávy přes MQTT s úrovněmi světla. Později v této lekci ji nastavíte tak, aby odpovídala příkazovou zprávou s instrukcemi pro zapnutí nebo vypnutí LED.
+
+✅ Udělejte si průzkum: Co se stane s MQTT zprávami, pokud není žádný posluchač?
+
+#### Instalace Pythonu a VS Code
+
+Pokud nemáte Python a VS Code nainstalované lokálně, budete je muset nainstalovat, abyste mohli psát serverový kód. Pokud používáte virtuální IoT zařízení nebo pracujete na svém Raspberry Pi, můžete tento krok přeskočit, protože byste již měli mít vše nainstalováno a nakonfigurováno.
+
+##### Úkol - instalace Pythonu a VS Code
+
+Nainstalujte Python a VS Code.
+
+1. Nainstalujte Python. Podívejte se na [stránku ke stažení Pythonu](https://www.python.org/downloads/) pro pokyny k instalaci nejnovější verze Pythonu.
+
+1. Nainstalujte Visual Studio Code (VS Code). Toto je editor, který budete používat k psaní kódu svého virtuálního zařízení v Pythonu. Podívejte se na [dokumentaci VS Code](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn) pro pokyny k instalaci VS Code.
+💁 Můžete použít jakékoli IDE nebo editor pro Python, pokud máte oblíbený nástroj, ale lekce budou obsahovat pokyny založené na používání VS Code.
+1. Nainstalujte rozšíření Pylance pro VS Code. Toto je rozšíření pro VS Code, které poskytuje podporu pro jazyk Python. Pokyny k instalaci tohoto rozšíření ve VS Code naleznete v [dokumentaci k rozšíření Pylance](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=ms-python.vscode-pylance).
+
+#### Konfigurace virtuálního prostředí Pythonu
+
+Jednou z výkonných funkcí Pythonu je možnost instalovat [pip balíčky](https://pypi.org) – jedná se o balíčky kódu napsané jinými lidmi a publikované na internetu. Pip balíček můžete nainstalovat na svůj počítač jedním příkazem a poté jej použít ve svém kódu. Budete používat pip k instalaci balíčku pro komunikaci přes MQTT.
+
+Ve výchozím nastavení je po instalaci balíček dostupný všude na vašem počítači, což může vést k problémům s verzemi balíčků – například jedna aplikace závisí na jedné verzi balíčku, která přestane fungovat, když nainstalujete novou verzi pro jinou aplikaci. Aby se tento problém obešel, můžete použít [virtuální prostředí Pythonu](https://docs.python.org/3/library/venv.html), což je v podstatě kopie Pythonu v dedikované složce. Když nainstalujete pip balíčky, budou nainstalovány pouze do této složky.
+
+##### Úkol – konfigurace virtuálního prostředí Pythonu
+
+Nakonfigurujte virtuální prostředí Pythonu a nainstalujte pip balíčky pro MQTT.
+
+1. V terminálu nebo příkazovém řádku spusťte následující příkazy na místě dle vašeho výběru pro vytvoření a přechod do nové složky:
+
+ ```sh
+ mkdir nightlight-server
+ cd nightlight-server
+ ```
+
+1. Nyní spusťte následující příkaz pro vytvoření virtuálního prostředí ve složce `.venv`:
+
+ ```sh
+ python3 -m venv .venv
+ ```
+
+ > 💁 Musíte explicitně zavolat `python3` pro vytvoření virtuálního prostředí, protože můžete mít nainstalovaný Python 2 vedle Pythonu 3 (nejnovější verze). Pokud máte nainstalovaný Python 2, volání `python` použije Python 2 místo Pythonu 3.
+
+1. Aktivujte virtuální prostředí:
+
+ * Na Windows:
+ * Pokud používáte Příkazový řádek nebo Příkazový řádek přes Windows Terminal, spusťte:
+
+ ```cmd
+ .venv\Scripts\activate.bat
+ ```
+
+ * Pokud používáte PowerShell, spusťte:
+
+ ```powershell
+ .\.venv\Scripts\Activate.ps1
+ ```
+
+ * Na macOS nebo Linuxu spusťte:
+
+ ```cmd
+ source ./.venv/bin/activate
+ ```
+
+ > 💁 Tyto příkazy by měly být spuštěny ze stejného místa, kde jste spustili příkaz pro vytvoření virtuálního prostředí. Nikdy nebudete muset přejít do složky `.venv`, vždy byste měli spustit aktivační příkaz a jakékoli příkazy pro instalaci balíčků nebo spuštění kódu ze složky, ve které jste vytvořili virtuální prostředí.
+
+1. Jakmile je virtuální prostředí aktivováno, výchozí příkaz `python` spustí verzi Pythonu, která byla použita k vytvoření virtuálního prostředí. Spusťte následující příkaz pro zjištění verze:
+
+ ```sh
+ python --version
+ ```
+
+ Výstup bude podobný následujícímu:
+
+ ```output
+ (.venv) ➜ nightlight-server python --version
+ Python 3.9.1
+ ```
+
+ > 💁 Vaše verze Pythonu může být jiná – pokud je to verze 3.6 nebo vyšší, je to v pořádku. Pokud ne, smažte tuto složku, nainstalujte novější verzi Pythonu a zkuste to znovu.
+
+1. Spusťte následující příkazy pro instalaci pip balíčku [Paho-MQTT](https://pypi.org/project/paho-mqtt/), populární MQTT knihovny.
+
+ ```sh
+ pip install paho-mqtt
+ ```
+
+ Tento pip balíček bude nainstalován pouze ve virtuálním prostředí a nebude dostupný mimo něj.
+
+#### Napište kód serveru
+
+Nyní můžete napsat kód serveru v Pythonu.
+
+##### Úkol – napište kód serveru
+
+Napište kód serveru.
+
+1. V terminálu nebo příkazovém řádku spusťte následující příkaz uvnitř virtuálního prostředí pro vytvoření Python souboru s názvem `app.py`:
+
+ * Na Windows spusťte:
+
+ ```cmd
+ type nul > app.py
+ ```
+
+ * Na macOS nebo Linuxu spusťte:
+
+ ```cmd
+ touch app.py
+ ```
+
+1. Otevřete aktuální složku ve VS Code:
+
+ ```sh
+ code .
+ ```
+
+1. Když se VS Code spustí, aktivuje virtuální prostředí Pythonu. To bude uvedeno ve spodním stavovém řádku:
+
+ 
+
+1. Pokud je terminál VS Code již spuštěn při startu VS Code, virtuální prostředí v něm nebude aktivováno. Nejjednodušší je ukončit terminál pomocí tlačítka **Kill the active terminal instance**:
+
+ 
+
+1. Spusťte nový terminál VS Code výběrem *Terminal -> New Terminal* nebo stisknutím `` CTRL+` ``. Nový terminál načte virtuální prostředí, přičemž volání aktivačního příkazu se objeví v terminálu. Název virtuálního prostředí (`.venv`) bude také v promptu:
+
+ ```output
+ ➜ nightlight-server source .venv/bin/activate
+ (.venv) ➜ nightlight
+ ```
+
+1. Otevřete soubor `app.py` v průzkumníku VS Code a přidejte následující kód:
+
+ ```python
+ import json
+ import time
+
+ import paho.mqtt.client as mqtt
+
+ id = ''
+
+ client_telemetry_topic = id + '/telemetry'
+ client_name = id + 'nightlight_server'
+
+ mqtt_client = mqtt.Client(client_name)
+ mqtt_client.connect('test.mosquitto.org')
+
+ mqtt_client.loop_start()
+
+ def handle_telemetry(client, userdata, message):
+ payload = json.loads(message.payload.decode())
+ print("Message received:", payload)
+
+ mqtt_client.subscribe(client_telemetry_topic)
+ mqtt_client.on_message = handle_telemetry
+
+ while True:
+ time.sleep(2)
+ ```
+
+ Nahraďte `` na řádku 6 unikátním ID, které jste použili při vytváření kódu zařízení.
+
+ ⚠️ Toto **musí** být stejné ID, které jste použili na svém zařízení, jinak se kód serveru nepřihlásí k odběru ani nepublikuje na správné téma.
+
+ Tento kód vytvoří MQTT klienta s unikátním názvem a připojí se k brokeru *test.mosquitto.org*. Poté spustí zpracovatelský cyklus, který běží na pozadí a naslouchá zprávám na jakýchkoli přihlášených tématech.
+
+ Klient se poté přihlásí k odběru zpráv na telemetrickém tématu a definuje funkci, která se zavolá, když je přijata zpráva. Když je přijata telemetrická zpráva, zavolá se funkce `handle_telemetry`, která vytiskne přijatou zprávu do konzole.
+
+ Nakonec nekonečný cyklus udržuje aplikaci v chodu. MQTT klient naslouchá zprávám na pozadí a běží po celou dobu, kdy hlavní aplikace běží.
+
+1. V terminálu VS Code spusťte následující příkaz pro spuštění vaší Python aplikace:
+
+ ```sh
+ python app.py
+ ```
+
+ Aplikace začne naslouchat zprávám z IoT zařízení.
+
+1. Ujistěte se, že vaše zařízení běží a odesílá telemetrické zprávy. Upravte úrovně světla detekované vaším fyzickým nebo virtuálním zařízením. Přijaté zprávy budou vytištěny do terminálu.
+
+ ```output
+ (.venv) ➜ nightlight-server python app.py
+ Message received: {'light': 0}
+ Message received: {'light': 400}
+ ```
+
+ Soubor app.py ve virtuálním prostředí nightlight musí běžet, aby soubor app.py ve virtuálním prostředí nightlight-server mohl přijímat odesílané zprávy.
+
+> 💁 Tento kód najdete ve složce [code-server/server](../../../../../1-getting-started/lessons/4-connect-internet/code-server/server).
+
+### Jak často by měla být telemetrie odesílána?
+
+Jedním z důležitých aspektů telemetrie je, jak často měřit a odesílat data? Odpověď zní – záleží na situaci. Pokud měříte často, můžete rychleji reagovat na změny, ale spotřebujete více energie, šířky pásma, generujete více dat a potřebujete více cloudových zdrojů pro zpracování. Je třeba měřit dostatečně často, ale ne příliš často.
+
+Pro termostat je měření každých pár minut pravděpodobně více než dostatečné, protože teploty se tak často nemění. Pokud měříte pouze jednou denně, mohli byste vytápět dům na noční teploty uprostřed slunečného dne, zatímco pokud měříte každou sekundu, budete mít tisíce zbytečně duplicitních měření teploty, což zpomalí internet uživatele a spotřebuje šířku pásma (problém pro lidi s omezenými datovými plány), spotřebuje více energie, což může být problém pro zařízení napájená z baterií, a zvýší náklady na cloudové výpočetní zdroje poskytovatele pro jejich zpracování a ukládání.
+
+Pokud monitorujete data kolem stroje v továrně, jehož selhání by mohlo způsobit katastrofální škody a miliony dolarů ztrát, může být nutné měřit několikrát za sekundu. Je lepší plýtvat šířkou pásma, než přehlédnout telemetrii, která naznačuje, že stroj je třeba zastavit a opravit, než se rozbije.
+
+> 💁 V takové situaci byste mohli zvážit použití edge zařízení pro zpracování telemetrie, aby se snížila závislost na internetu.
+
+### Ztráta připojení
+
+Internetové připojení může být nespolehlivé a výpadky jsou běžné. Co by mělo IoT zařízení dělat v takových případech – mělo by data ztratit, nebo je uložit, dokud nebude připojení obnoveno? Opět platí, že odpověď závisí na situaci.
+
+Pro termostat mohou být data ztracena, jakmile je provedeno nové měření teploty. Topení nezajímá, že před 20 minutami bylo 20,5 °C, pokud je nyní 19 °C – aktuální teplota určuje, zda má být topení zapnuto nebo vypnuto.
+
+Pro stroje byste možná chtěli data uchovat, zejména pokud se používají k hledání trendů. Existují modely strojového učení, které dokážou detekovat anomálie v datových tocích tím, že se podívají na data za určité časové období (například poslední hodinu) a identifikují anomální data. To se často používá pro prediktivní údržbu, která hledá náznaky, že by se něco mohlo brzy rozbít, aby bylo možné provést opravu nebo výměnu dříve, než k tomu dojde. Možná budete chtít, aby každá telemetrie stroje byla odeslána, aby mohla být zpracována pro detekci anomálií, takže jakmile se IoT zařízení znovu připojí, odešle veškerou telemetrii generovanou během výpadku internetu.
+
+Návrháři IoT zařízení by také měli zvážit, zda lze IoT zařízení používat během výpadku internetu nebo ztráty signálu způsobené lokalitou. Chytrý termostat by měl být schopen provádět některá omezená rozhodnutí o řízení vytápění, pokud nemůže odesílat telemetrii do cloudu kvůli výpadku.
+
+[](https://twitter.com/internetofshit/status/1315736960082808832)
+
+Aby MQTT zvládlo ztrátu připojení, musí být zařízení a serverový kód zodpovědné za zajištění doručení zpráv, pokud je to potřeba, například vyžadováním, aby na všechny odeslané zprávy byly odpovězeno dalšími zprávami na odpovědním tématu. Pokud ne, jsou ručně zařazeny do fronty k pozdějšímu přehrání.
+
+## Příkazy
+
+Příkazy jsou zprávy odeslané z cloudu do zařízení, které mu nařizují něco udělat. Většinou to zahrnuje nějaký výstup přes akční člen, ale může to být i instrukce pro samotné zařízení, například restartovat nebo shromáždit další telemetrii a vrátit ji jako odpověď na příkaz.
+
+
+
+Termostat by mohl přijmout příkaz z cloudu k zapnutí topení. Na základě telemetrických dat ze všech senzorů cloudová služba rozhodla, že topení by mělo být zapnuto, a tak odešle příslušný příkaz.
+
+### Odesílání příkazů do MQTT brokeru
+
+Dalším krokem pro náš internetem ovládaný noční světlo je, aby serverový kód odeslal příkaz zpět do IoT zařízení k ovládání světla na základě úrovní světla, které detekuje.
+
+1. Otevřete serverový kód ve VS Code.
+
+1. Přidejte následující řádek za deklaraci `client_telemetry_topic` pro definování tématu, na které se budou odesílat příkazy:
+
+ ```python
+ server_command_topic = id + '/commands'
+ ```
+
+1. Přidejte následující kód na konec funkce `handle_telemetry`:
+
+ ```python
+ command = { 'led_on' : payload['light'] < 300 }
+ print("Sending message:", command)
+
+ client.publish(server_command_topic, json.dumps(command))
+ ```
+
+ Tento kód odešle JSON zprávu na příkazové téma s hodnotou `led_on` nastavenou na true nebo false v závislosti na tom, zda je světlo menší než 300. Pokud je světlo menší než 300, odešle se true, aby zařízení zapnulo LED.
+
+1. Spusťte kód jako dříve.
+
+1. Upravte úrovně světla detekované vaším fyzickým nebo virtuálním zařízením. Přijaté zprávy a odeslané příkazy budou zobrazeny v terminálu:
+
+ ```output
+ (.venv) ➜ nightlight-server python app.py
+ Message received: {'light': 0}
+ Sending message: {'led_on': True}
+ Message received: {'light': 400}
+ Sending message: {'led_on': False}
+ ```
+
+> 💁 Telemetrie a příkazy jsou odesílány na jedno téma. To znamená, že telemetrie z více zařízení se objeví na stejném telemetrickém tématu a příkazy pro více zařízení se objeví na stejném příkazovém tématu. Pokud byste chtěli odeslat příkaz konkrétnímu zařízení, mohli byste použít více témat pojmenovaných unikátním ID zařízení, například `/commands/device1`, `/commands/device2`. Tímto způsobem může zařízení naslouchat pouze zprávám určeným pro něj.
+
+> 💁 Tento kód najdete ve složce [code-commands/server](../../../../../1-getting-started/lessons/4-connect-internet/code-commands/server).
+
+### Zpracování příkazů na IoT zařízení
+
+Nyní, když jsou příkazy odesílány ze serveru, můžete přidat kód do IoT zařízení pro jejich zpracování a ovládání LED.
+
+Postupujte podle příslušného kroku níže pro naslouchání příkazům z MQTT brokeru:
+
+* [Arduino - Wio Terminal](wio-terminal-commands.md)
+* [Jednodeskový počítač - Raspberry Pi/virtuální IoT zařízení](single-board-computer-commands.md)
+
+Jakmile je tento kód napsán a spuštěn, experimentujte se změnou úrovní světla. Sledujte výstup ze serveru a zařízení a sledujte LED, jak měníte úrovně světla.
+
+### Ztráta připojení
+
+Co by měla cloudová služba dělat, pokud potřebuje odeslat příkaz IoT zařízení, které je offline? Opět platí, že odpověď závisí na situaci.
+
+Pokud nejnovější příkaz přepisuje předchozí, pak mohou být ty předchozí ignorovány. Pokud cloudová služba odešle příkaz k zapnutí topení a poté příkaz k jeho vypnutí, příkaz k zapnutí může být ignorován a znovu neodeslán.
+
+Pokud musí být příkazy zpracovány v pořadí, například pohyb robotického ramene nahoru a poté zavření uchopovače, musí být odeslány v pořadí, jakmile bude připojení obnoveno.
+
+✅ Jak by mohl kód zařízení nebo serveru zajistit, že příkazy budou vždy odeslány a zpracovány ve správném pořadí přes MQTT, pokud je to potřeba?
+
+---
+
+## 🚀 Výzva
+
+Výzvou v posledních třech lekcích bylo vypsat co nejvíce IoT zařízení, která máte doma, ve škole nebo na pracovišti, a rozhodnout, zda jsou postavena na mikrokontrolérech nebo jednodeskových počítačích, nebo dokonce na kombinaci obou, a zamyslet se nad tím, jaké senzory a akční členy používají.
+Pro tyto zařízení přemýšlejte, jaké zprávy mohou odesílat nebo přijímat. Jakou telemetrii odesílají? Jaké zprávy nebo příkazy mohou přijímat? Myslíte si, že jsou bezpečné?
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/8)
+
+## Přehled a samostudium
+
+Přečtěte si více o MQTT na [stránce Wikipedie o MQTT](https://wikipedia.org/wiki/MQTT).
+
+Zkuste si sami spustit MQTT broker pomocí [Mosquitto](https://www.mosquitto.org) a připojte se k němu ze svého IoT zařízení a serverového kódu.
+
+> 💁 Tip - ve výchozím nastavení Mosquitto neumožňuje anonymní připojení (tj. připojení bez uživatelského jména a hesla) a neumožňuje připojení z jiných počítačů než toho, na kterém běží.
+> Toto můžete upravit pomocí [konfiguračního souboru `mosquitto.conf`](https://www.mosquitto.org/man/mosquitto-conf-5.html) s následujícím obsahem:
+>
+> ```sh
+> listener 1883 0.0.0.0
+> allow_anonymous true
+> ```
+
+## Zadání
+
+[Porovnejte a kontrastujte MQTT s jinými komunikačními protokoly](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/assignment.md b/translations/cs/1-getting-started/lessons/4-connect-internet/assignment.md
new file mode 100644
index 00000000..3d41c644
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/assignment.md
@@ -0,0 +1,28 @@
+
+# Porovnejte a kontrastujte MQTT s jinými komunikačními protokoly
+
+## Pokyny
+
+Tato lekce se zabývala MQTT jako komunikačním protokolem. Existují i další, včetně AMQP a HTTP/HTTPS.
+
+Prozkoumejte oba tyto protokoly a porovnejte/kontrastujte je s MQTT. Zaměřte se na spotřebu energie, bezpečnost a trvalost zpráv v případě ztráty připojení.
+
+## Hodnotící kritéria
+
+| Kritéria | Vynikající | Přiměřené | Vyžaduje zlepšení |
+| -------- | ---------- | --------- | ----------------- |
+| Porovnání AMQP s MQTT | Je schopen porovnat a kontrastovat AMQP s MQTT a pokrývá spotřebu energie, bezpečnost a trvalost zpráv. | Je částečně schopen porovnat a kontrastovat AMQP s MQTT a pokrývá dvě z následujících: spotřebu energie, bezpečnost a trvalost zpráv. | Je částečně schopen porovnat a kontrastovat AMQP s MQTT a pokrývá jednu z následujících: spotřebu energie, bezpečnost a trvalost zpráv. |
+| Porovnání HTTP/HTTPS s MQTT | Je schopen porovnat a kontrastovat HTTP/HTTPS s MQTT a pokrývá spotřebu energie, bezpečnost a trvalost zpráv. | Je částečně schopen porovnat a kontrastovat HTTP/HTTPS s MQTT a pokrývá dvě z následujících: spotřebu energie, bezpečnost a trvalost zpráv. | Je částečně schopen porovnat a kontrastovat HTTP/HTTPS s MQTT a pokrývá jednu z následujících: spotřebu energie, bezpečnost a trvalost zpráv. |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-commands.md b/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-commands.md
new file mode 100644
index 00000000..19cf347b
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-commands.md
@@ -0,0 +1,67 @@
+
+# Ovládejte noční světlo přes internet - Virtuální IoT hardware a Raspberry Pi
+
+V této části lekce se naučíte, jak se přihlásit k odběru příkazů odesílaných z MQTT brokeru do vašeho Raspberry Pi nebo virtuálního IoT zařízení.
+
+## Přihlášení k odběru příkazů
+
+Dalším krokem je přihlásit se k odběru příkazů odesílaných z MQTT brokeru a reagovat na ně.
+
+### Úkol
+
+Přihlaste se k odběru příkazů.
+
+1. Otevřete projekt nočního světla ve VS Code.
+
+1. Pokud používáte virtuální IoT zařízení, ujistěte se, že terminál běží ve virtuálním prostředí. Pokud používáte Raspberry Pi, virtuální prostředí používat nebudete.
+
+1. Přidejte následující kód za definice `client_telemetry_topic`:
+
+ ```python
+ server_command_topic = id + '/commands'
+ ```
+
+ `server_command_topic` je MQTT téma, na které se zařízení přihlásí k odběru, aby přijímalo příkazy pro LED.
+
+1. Přidejte následující kód těsně nad hlavní smyčku, za řádek `mqtt_client.loop_start()`:
+
+ ```python
+ def handle_command(client, userdata, message):
+ payload = json.loads(message.payload.decode())
+ print("Message received:", payload)
+
+ if payload['led_on']:
+ led.on()
+ else:
+ led.off()
+
+ mqtt_client.subscribe(server_command_topic)
+ mqtt_client.on_message = handle_command
+ ```
+
+ Tento kód definuje funkci `handle_command`, která čte zprávu jako JSON dokument a hledá hodnotu vlastnosti `led_on`. Pokud je nastavena na `True`, LED se zapne, jinak se vypne.
+
+ MQTT klient se přihlásí k odběru tématu, na které server bude odesílat zprávy, a nastaví funkci `handle_command`, která se zavolá při přijetí zprávy.
+
+ > 💁 Obsluha `on_message` je volána pro všechna témata, ke kterým jste přihlášeni. Pokud později napíšete kód, který naslouchá více tématům, můžete získat téma, na které byla zpráva odeslána, z objektu `message` předaného do obslužné funkce.
+
+1. Spusťte kód stejným způsobem, jako jste spustili kód z předchozí části úkolu. Pokud používáte virtuální IoT zařízení, ujistěte se, že aplikace CounterFit běží a že světelný senzor a LED byly vytvořeny na správných pinech.
+
+1. Upravte úroveň světla detekovanou vaším fyzickým nebo virtuálním zařízením. Zprávy, které jsou přijímány, a příkazy, které jsou odesílány, budou zapsány do terminálu. LED se také zapne a vypne v závislosti na úrovni světla.
+
+> 💁 Tento kód najdete ve složce [code-commands/virtual-device](../../../../../1-getting-started/lessons/4-connect-internet/code-commands/virtual-device) nebo ve složce [code-commands/pi](../../../../../1-getting-started/lessons/4-connect-internet/code-commands/pi).
+
+😀 Úspěšně jste naprogramovali své zařízení tak, aby reagovalo na příkazy z MQTT brokeru.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za závazný zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-mqtt.md b/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-mqtt.md
new file mode 100644
index 00000000..ca05caaa
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-mqtt.md
@@ -0,0 +1,93 @@
+
+# Ovládejte noční světlo přes internet - Virtuální IoT hardware a Raspberry Pi
+
+IoT zařízení musí být naprogramováno tak, aby komunikovalo s *test.mosquitto.org* pomocí MQTT, odesílalo telemetrické hodnoty s údaji ze světelného senzoru a přijímalo příkazy k ovládání LED.
+
+V této části lekce připojíte svůj Raspberry Pi nebo virtuální IoT zařízení k MQTT brokeru.
+
+## Instalace balíčku MQTT klienta
+
+Pro komunikaci s MQTT brokerem je potřeba nainstalovat knihovnu MQTT jako pip balíček, buď na vašem Raspberry Pi, nebo ve virtuálním prostředí, pokud používáte virtuální zařízení.
+
+### Úkol
+
+Nainstalujte pip balíček
+
+1. Otevřete projekt nočního světla ve VS Code.
+
+1. Pokud používáte virtuální IoT zařízení, ujistěte se, že terminál běží ve virtuálním prostředí. Pokud používáte Raspberry Pi, virtuální prostředí používat nebudete.
+
+1. Spusťte následující příkaz pro instalaci MQTT pip balíčku:
+
+ ```sh
+ pip3 install paho-mqtt
+ ```
+
+## Naprogramujte zařízení
+
+Zařízení je připraveno k programování.
+
+### Úkol
+
+Napište kód zařízení.
+
+1. Přidejte následující import na začátek souboru `app.py`:
+
+ ```python
+ import paho.mqtt.client as mqtt
+ ```
+
+ Knihovna `paho.mqtt.client` umožňuje vaší aplikaci komunikovat přes MQTT.
+
+1. Přidejte následující kód za definice světelného senzoru a LED:
+
+ ```python
+ id = ''
+
+ client_name = id + 'nightlight_client'
+ ```
+
+ Nahraďte `` unikátním ID, které bude použito jako název tohoto klienta zařízení a později pro témata, která toto zařízení publikuje a odebírá. Broker *test.mosquitto.org* je veřejný a používá ho mnoho lidí, včetně dalších studentů pracujících na tomto úkolu. Mít unikátní název MQTT klienta a názvy témat zajistí, že váš kód nebude kolidovat s kódem někoho jiného. Toto ID budete také potřebovat při vytváření serverového kódu později v tomto úkolu.
+
+ > 💁 Můžete použít webovou stránku jako [GUIDGen](https://www.guidgen.com) pro vygenerování unikátního ID.
+
+ `client_name` je unikátní název tohoto MQTT klienta na brokeru.
+
+1. Přidejte následující kód pod tento nový kód pro vytvoření objektu MQTT klienta a připojení k MQTT brokeru:
+
+ ```python
+ mqtt_client = mqtt.Client(client_name)
+ mqtt_client.connect('test.mosquitto.org')
+
+ mqtt_client.loop_start()
+
+ print("MQTT connected!")
+ ```
+
+ Tento kód vytvoří objekt klienta, připojí se k veřejnému MQTT brokeru a spustí zpracovávací smyčku, která běží na pozadí ve vlákně a naslouchá zprávám na všech odebíraných tématech.
+
+1. Spusťte kód stejným způsobem, jako jste spouštěli kód z předchozí části úkolu. Pokud používáte virtuální IoT zařízení, ujistěte se, že aplikace CounterFit běží a že světelný senzor a LED byly vytvořeny na správných pinech.
+
+ ```output
+ (.venv) ➜ nightlight python app.py
+ MQTT connected!
+ Light level: 0
+ Light level: 0
+ ```
+
+> 💁 Tento kód najdete ve složce [code-mqtt/virtual-device](../../../../../1-getting-started/lessons/4-connect-internet/code-mqtt/virtual-device) nebo [code-mqtt/pi](../../../../../1-getting-started/lessons/4-connect-internet/code-mqtt/pi).
+
+😀 Úspěšně jste připojili své zařízení k MQTT brokeru.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za závazný zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné výklady vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-telemetry.md b/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-telemetry.md
new file mode 100644
index 00000000..298b3d9d
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/single-board-computer-telemetry.md
@@ -0,0 +1,74 @@
+
+# Ovládejte svůj noční světlo přes internet - Virtuální IoT zařízení a Raspberry Pi
+
+V této části lekce budete odesílat telemetrii s úrovněmi světla z vašeho Raspberry Pi nebo virtuálního IoT zařízení do MQTT brokeru.
+
+## Publikování telemetrie
+
+Dalším krokem je vytvoření JSON dokumentu s telemetrií a jeho odeslání do MQTT brokeru.
+
+### Úkol
+
+Publikujte telemetrii do MQTT brokeru.
+
+1. Otevřete projekt nočního světla ve VS Code.
+
+1. Pokud používáte virtuální IoT zařízení, ujistěte se, že terminál běží ve virtuálním prostředí. Pokud používáte Raspberry Pi, nebudete používat virtuální prostředí.
+
+1. Přidejte následující import na začátek souboru `app.py`:
+
+ ```python
+ import json
+ ```
+
+ Knihovna `json` se používá k zakódování telemetrie jako JSON dokumentu.
+
+1. Přidejte následující po deklaraci `client_name`:
+
+ ```python
+ client_telemetry_topic = id + '/telemetry'
+ ```
+
+ `client_telemetry_topic` je MQTT téma, do kterého zařízení bude publikovat úrovně světla.
+
+1. Nahraďte obsah smyčky `while True:` na konci souboru následujícím:
+
+ ```python
+ while True:
+ light = light_sensor.light
+ telemetry = json.dumps({'light' : light})
+
+ print("Sending telemetry ", telemetry)
+
+ mqtt_client.publish(client_telemetry_topic, telemetry)
+
+ time.sleep(5)
+ ```
+
+ Tento kód zabalí úroveň světla do JSON dokumentu a publikuje ji do MQTT brokeru. Poté se uspí, aby se snížila frekvence odesílání zpráv.
+
+1. Spusťte kód stejným způsobem, jako jste spouštěli kód z předchozí části úkolu. Pokud používáte virtuální IoT zařízení, ujistěte se, že aplikace CounterFit běží a že světelný senzor a LED byly vytvořeny na správných pinech.
+
+ ```output
+ (.venv) ➜ nightlight python app.py
+ MQTT connected!
+ Sending telemetry {"light": 0}
+ Sending telemetry {"light": 0}
+ ```
+
+> 💁 Tento kód najdete ve složce [code-telemetry/virtual-device](../../../../../1-getting-started/lessons/4-connect-internet/code-telemetry/virtual-device) nebo ve složce [code-telemetry/pi](../../../../../1-getting-started/lessons/4-connect-internet/code-telemetry/pi).
+
+😀 Úspěšně jste odeslali telemetrii ze svého zařízení.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-commands.md b/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-commands.md
new file mode 100644
index 00000000..d7922bd5
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-commands.md
@@ -0,0 +1,93 @@
+
+# Ovládejte svůj noční světlo přes internet - Wio Terminal
+
+V této části lekce se naučíte, jak se přihlásit k odběru příkazů zasílaných z MQTT brokeru do vašeho Wio Terminalu.
+
+## Přihlášení k odběru příkazů
+
+Dalším krokem je přihlásit se k odběru příkazů zasílaných z MQTT brokeru a reagovat na ně.
+
+### Úkol
+
+Přihlaste se k odběru příkazů.
+
+1. Otevřete projekt nočního světla ve VS Code.
+
+1. Přidejte následující kód na konec souboru `config.h`, abyste definovali název tématu pro příkazy:
+
+ ```cpp
+ const string SERVER_COMMAND_TOPIC = ID + "/commands";
+ ```
+
+ `SERVER_COMMAND_TOPIC` je téma, ke kterému se zařízení přihlásí, aby přijímalo příkazy pro LED.
+
+1. Přidejte následující řádek na konec funkce `reconnectMQTTClient`, aby se zařízení přihlásilo k odběru tématu příkazů při opětovném připojení MQTT klienta:
+
+ ```cpp
+ client.subscribe(SERVER_COMMAND_TOPIC.c_str());
+ ```
+
+1. Přidejte následující kód pod funkci `reconnectMQTTClient`.
+
+ ```cpp
+ void clientCallback(char *topic, uint8_t *payload, unsigned int length)
+ {
+ char buff[length + 1];
+ for (int i = 0; i < length; i++)
+ {
+ buff[i] = (char)payload[i];
+ }
+ buff[length] = '\0';
+
+ Serial.print("Message received:");
+ Serial.println(buff);
+
+ DynamicJsonDocument doc(1024);
+ deserializeJson(doc, buff);
+ JsonObject obj = doc.as();
+
+ bool led_on = obj["led_on"];
+
+ if (led_on)
+ digitalWrite(D0, HIGH);
+ else
+ digitalWrite(D0, LOW);
+ }
+ ```
+
+ Tato funkce bude zpětné volání, které MQTT klient zavolá, když obdrží zprávu ze serveru.
+
+ Zpráva je přijímána jako pole 8bitových neznačených celých čísel, takže je třeba ji převést na pole znaků, aby mohla být zpracována jako text.
+
+ Zpráva obsahuje JSON dokument, který je dekódován pomocí knihovny ArduinoJson. Vlastnost `led_on` z JSON dokumentu je přečtena a v závislosti na její hodnotě se LED zapne nebo vypne.
+
+1. Přidejte následující kód do funkce `createMQTTClient`:
+
+ ```cpp
+ client.setCallback(clientCallback);
+ ```
+
+ Tento kód nastaví `clientCallback` jako zpětné volání, které bude zavoláno, když MQTT broker odešle zprávu.
+
+ > 💁 Zpětné volání `clientCallback` je voláno pro všechna témata, ke kterým jste přihlášeni. Pokud později napíšete kód, který poslouchá více témat, můžete získat téma, na které byla zpráva odeslána, z parametru `topic` předaného zpětnému volání.
+
+1. Nahrajte kód do svého Wio Terminalu a použijte Serial Monitor, abyste viděli úrovně světla odesílané do MQTT brokeru.
+
+1. Upravte úrovně světla detekované vaším fyzickým nebo virtuálním zařízením. Uvidíte zprávy, které jsou přijímány, a příkazy, které jsou odesílány v terminálu. Také uvidíte, jak se LED zapíná a vypíná v závislosti na úrovni světla.
+
+> 💁 Tento kód najdete ve složce [code-commands/wio-terminal](../../../../../1-getting-started/lessons/4-connect-internet/code-commands/wio-terminal).
+
+😀 Úspěšně jste naprogramovali své zařízení, aby reagovalo na příkazy z MQTT brokeru.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-mqtt.md b/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-mqtt.md
new file mode 100644
index 00000000..4d2cfa73
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-mqtt.md
@@ -0,0 +1,251 @@
+
+# Ovládejte svůj noční světlo přes internet - Wio Terminal
+
+IoT zařízení musí být naprogramováno tak, aby komunikovalo s *test.mosquitto.org* pomocí MQTT, odesílalo telemetrické hodnoty na základě čtení světelného senzoru a přijímalo příkazy k ovládání LED.
+
+V této části lekce připojíte svůj Wio Terminal k MQTT brokeru.
+
+## Instalace knihoven WiFi a MQTT pro Arduino
+
+Pro komunikaci s MQTT brokerem je třeba nainstalovat některé knihovny Arduino, které umožní použití WiFi čipu v zařízení Wio Terminal a komunikaci přes MQTT. Při vývoji pro zařízení Arduino můžete využít širokou škálu knihoven, které obsahují open-source kód a implementují mnoho funkcí. Seeed zveřejňuje knihovny pro Wio Terminal, které umožňují komunikaci přes WiFi. Jiní vývojáři zveřejnili knihovny pro komunikaci s MQTT brokery, které budete používat se svým zařízením.
+
+Tyto knihovny jsou poskytovány jako zdrojový kód, který lze automaticky importovat do PlatformIO a zkompilovat pro vaše zařízení. Díky tomu budou knihovny Arduino fungovat na jakémkoli zařízení podporujícím Arduino framework, za předpokladu, že zařízení má potřebný hardware pro danou knihovnu. Některé knihovny, jako například Seeed WiFi knihovny, jsou specifické pro určitý hardware.
+
+Knihovny lze instalovat globálně a kompilovat podle potřeby, nebo do konkrétního projektu. Pro tento úkol budou knihovny instalovány do projektu.
+
+✅ Více o správě knihoven a o tom, jak najít a nainstalovat knihovny, se dozvíte v [dokumentaci PlatformIO ke správě knihoven](https://docs.platformio.org/en/latest/librarymanager/index.html).
+
+### Úkol - instalace knihoven WiFi a MQTT pro Arduino
+
+Nainstalujte knihovny Arduino.
+
+1. Otevřete projekt nočního světla ve VS Code.
+
+1. Přidejte následující na konec souboru `platformio.ini`:
+
+ ```ini
+ lib_deps =
+ seeed-studio/Seeed Arduino rpcWiFi @ 1.0.5
+ seeed-studio/Seeed Arduino FS @ 2.1.1
+ seeed-studio/Seeed Arduino SFUD @ 2.0.2
+ seeed-studio/Seeed Arduino rpcUnified @ 2.1.3
+ seeed-studio/Seeed_Arduino_mbedtls @ 3.0.1
+ ```
+
+ Tím se importují Seeed WiFi knihovny. Syntaxe `@ <číslo>` odkazuje na konkrétní verzi knihovny.
+
+ > 💁 Můžete odstranit `@ <číslo>` a vždy používat nejnovější verzi knihoven, ale není zaručeno, že novější verze budou fungovat s níže uvedeným kódem. Kód zde byl testován s touto verzí knihoven.
+
+ To je vše, co je třeba udělat pro přidání knihoven. Při příštím sestavení projektu PlatformIO stáhne zdrojový kód těchto knihoven a zkompiluje jej do vašeho projektu.
+
+1. Přidejte následující do `lib_deps`:
+
+ ```ini
+ knolleary/PubSubClient @ 2.8
+ ```
+
+ Tím se importuje [PubSubClient](https://github.com/knolleary/pubsubclient), klient MQTT pro Arduino.
+
+## Připojení k WiFi
+
+Wio Terminal nyní může být připojen k WiFi.
+
+### Úkol - připojení k WiFi
+
+Připojte Wio Terminal k WiFi.
+
+1. Vytvořte nový soubor ve složce `src` s názvem `config.h`. Můžete to udělat tak, že vyberete složku `src` nebo soubor `main.cpp` uvnitř a kliknete na tlačítko **Nový soubor** v průzkumníku. Toto tlačítko se zobrazí pouze tehdy, když je kurzor nad průzkumníkem.
+
+ 
+
+1. Přidejte následující kód do tohoto souboru pro definování konstant pro vaše WiFi přihlašovací údaje:
+
+ ```cpp
+ #pragma once
+
+ #include
+
+ using namespace std;
+
+ // WiFi credentials
+ const char *SSID = "";
+ const char *PASSWORD = "";
+ ```
+
+ Nahraďte `` názvem vaší WiFi. Nahraďte `` heslem vaší WiFi.
+
+1. Otevřete soubor `main.cpp`.
+
+1. Přidejte následující direktivy `#include` na začátek souboru:
+
+ ```cpp
+ #include
+ #include
+ #include
+
+ #include "config.h"
+ ```
+
+ Tím se zahrnou hlavičkové soubory pro knihovny, které jste přidali dříve, stejně jako hlavičkový soubor config. Tyto hlavičkové soubory jsou potřebné k tomu, aby PlatformIO přineslo kód z knihoven. Bez explicitního zahrnutí těchto hlavičkových souborů nebude některý kód zkompilován a dojde k chybám kompilace.
+
+1. Přidejte následující kód nad funkci `setup`:
+
+ ```cpp
+ void connectWiFi()
+ {
+ while (WiFi.status() != WL_CONNECTED)
+ {
+ Serial.println("Connecting to WiFi..");
+ WiFi.begin(SSID, PASSWORD);
+ delay(500);
+ }
+
+ Serial.println("Connected!");
+ }
+ ```
+
+ Tento kód se opakovaně pokouší připojit k WiFi pomocí SSID a hesla z hlavičkového souboru config, dokud není zařízení připojeno.
+
+1. Přidejte volání této funkce na konec funkce `setup`, po konfiguraci pinů.
+
+ ```cpp
+ connectWiFi();
+ ```
+
+1. Nahrajte tento kód do svého zařízení a zkontrolujte, zda připojení k WiFi funguje. Měli byste to vidět v sériovém monitoru.
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem1101 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Connecting to WiFi..
+ Connected!
+ ```
+
+## Připojení k MQTT
+
+Jakmile je Wio Terminal připojen k WiFi, může se připojit k MQTT brokeru.
+
+### Úkol - připojení k MQTT
+
+Připojte se k MQTT brokeru.
+
+1. Přidejte následující kód na konec souboru `config.h` pro definování přihlašovacích údajů pro připojení k MQTT brokeru:
+
+ ```cpp
+ // MQTT settings
+ const string ID = "";
+
+ const string BROKER = "test.mosquitto.org";
+ const string CLIENT_NAME = ID + "nightlight_client";
+ ```
+
+ Nahraďte `` unikátním ID, které bude použito jako název tohoto klienta zařízení a později pro témata, která toto zařízení publikuje a odebírá. Broker *test.mosquitto.org* je veřejný a používá ho mnoho lidí, včetně dalších studentů pracujících na tomto úkolu. Mít unikátní název MQTT klienta a názvy témat zajistí, že váš kód nebude kolidovat s kódem někoho jiného. Toto ID budete také potřebovat při vytváření serverového kódu později v tomto úkolu.
+
+ > 💁 Můžete použít webovou stránku jako [GUIDGen](https://www.guidgen.com) pro generování unikátního ID.
+
+ `BROKER` je URL MQTT brokeru.
+
+ `CLIENT_NAME` je unikátní název tohoto MQTT klienta na brokeru.
+
+1. Otevřete soubor `main.cpp` a přidejte následující kód pod funkci `connectWiFi` a nad funkci `setup`:
+
+ ```cpp
+ WiFiClient wioClient;
+ PubSubClient client(wioClient);
+ ```
+
+ Tento kód vytvoří WiFi klienta pomocí knihoven WiFi pro Wio Terminal a použije ho k vytvoření MQTT klienta.
+
+1. Pod tento kód přidejte následující:
+
+ ```cpp
+ void reconnectMQTTClient()
+ {
+ while (!client.connected())
+ {
+ Serial.print("Attempting MQTT connection...");
+
+ if (client.connect(CLIENT_NAME.c_str()))
+ {
+ Serial.println("connected");
+ }
+ else
+ {
+ Serial.print("Retying in 5 seconds - failed, rc=");
+ Serial.println(client.state());
+
+ delay(5000);
+ }
+ }
+ }
+ ```
+
+ Tato funkce testuje připojení k MQTT brokeru a znovu se připojuje, pokud není připojeno. Opakuje se, dokud není připojeno, a pokouší se připojit pomocí unikátního názvu klienta definovaného v hlavičkovém souboru config.
+
+ Pokud připojení selže, znovu se pokusí po 5 sekundách.
+
+1. Přidejte následující kód pod funkci `reconnectMQTTClient`:
+
+ ```cpp
+ void createMQTTClient()
+ {
+ client.setServer(BROKER.c_str(), 1883);
+ reconnectMQTTClient();
+ }
+ ```
+
+ Tento kód nastaví MQTT broker pro klienta, stejně jako nastaví zpětné volání při přijetí zprávy. Poté se pokusí připojit k brokeru.
+
+1. Zavolejte funkci `createMQTTClient` ve funkci `setup` po připojení k WiFi.
+
+1. Nahraďte celou funkci `loop` následujícím:
+
+ ```cpp
+ void loop()
+ {
+ reconnectMQTTClient();
+ client.loop();
+
+ delay(2000);
+ }
+ ```
+
+ Tento kód začíná znovupřipojením k MQTT brokeru. Tato připojení mohou být snadno přerušena, takže je dobré pravidelně kontrolovat a znovu se připojit, pokud je to nutné. Poté volá metodu `loop` na MQTT klientovi, aby zpracoval všechny zprávy, které přicházejí na téma, na které je přihlášen. Tato aplikace je jedno-vláknová, takže zprávy nemohou být přijímány na pozadí, a proto je třeba na hlavním vlákně vyhradit čas na zpracování všech zpráv čekajících na síťovém připojení.
+
+ Nakonec zpoždění 2 sekundy zajistí, že úrovně světla nejsou odesílány příliš často a snižuje spotřebu energie zařízení.
+
+1. Nahrajte kód do svého Wio Terminal a použijte sériový monitor k zobrazení připojení zařízení k WiFi a MQTT.
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ source /Users/jimbennett/GitHub/IoT-For-Beginners/1-getting-started/lessons/4-connect-internet/code-mqtt/wio-terminal/nightlight/.venv/bin/activate
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Connecting to WiFi..
+ Connected!
+ Attempting MQTT connection...connected
+ ```
+
+> 💁 Tento kód najdete ve složce [code-mqtt/wio-terminal](../../../../../1-getting-started/lessons/4-connect-internet/code-mqtt/wio-terminal).
+
+😀 Úspěšně jste připojili své zařízení k MQTT brokeru.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-telemetry.md b/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-telemetry.md
new file mode 100644
index 00000000..9464f984
--- /dev/null
+++ b/translations/cs/1-getting-started/lessons/4-connect-internet/wio-terminal-telemetry.md
@@ -0,0 +1,93 @@
+
+# Ovládejte svůj noční světelný zdroj přes internet - Wio Terminal
+
+V této části lekce budete odesílat telemetrii s úrovněmi světla z vašeho Wio Terminalu na MQTT broker.
+
+## Instalace knihoven JSON pro Arduino
+
+Oblíbeným způsobem odesílání zpráv přes MQTT je použití JSON. Existuje knihovna pro Arduino, která usnadňuje čtení a zápis JSON dokumentů.
+
+### Úkol
+
+Nainstalujte knihovnu Arduino JSON.
+
+1. Otevřete projekt nočního světla ve VS Code.
+
+1. Přidejte následující jako další řádek do seznamu `lib_deps` v souboru `platformio.ini`:
+
+ ```ini
+ bblanchon/ArduinoJson @ 6.17.3
+ ```
+
+ Tímto importujete [ArduinoJson](https://arduinojson.org), knihovnu JSON pro Arduino.
+
+## Publikování telemetrie
+
+Dalším krokem je vytvoření JSON dokumentu s telemetrií a jeho odeslání na MQTT broker.
+
+### Úkol - publikování telemetrie
+
+Publikujte telemetrii na MQTT broker.
+
+1. Přidejte následující kód na konec souboru `config.h`, abyste definovali název tématu telemetrie pro MQTT broker:
+
+ ```cpp
+ const string CLIENT_TELEMETRY_TOPIC = ID + "/telemetry";
+ ```
+
+ `CLIENT_TELEMETRY_TOPIC` je téma, na které zařízení bude publikovat úrovně světla.
+
+1. Otevřete soubor `main.cpp`.
+
+1. Přidejte následující direktivu `#include` na začátek souboru:
+
+ ```cpp
+ #include
+ ```
+
+1. Přidejte následující kód do funkce `loop`, těsně před `delay`:
+
+ ```cpp
+ int light = analogRead(WIO_LIGHT);
+
+ DynamicJsonDocument doc(1024);
+ doc["light"] = light;
+
+ string telemetry;
+ serializeJson(doc, telemetry);
+
+ Serial.print("Sending telemetry ");
+ Serial.println(telemetry.c_str());
+
+ client.publish(CLIENT_TELEMETRY_TOPIC.c_str(), telemetry.c_str());
+ ```
+
+ Tento kód čte úroveň světla, vytvoří JSON dokument pomocí ArduinoJson obsahující tuto úroveň. Poté je serializován do řetězce a publikován na telemetrické MQTT téma pomocí MQTT klienta.
+
+1. Nahrajte kód do svého Wio Terminalu a použijte Serial Monitor k zobrazení úrovní světla odesílaných na MQTT broker.
+
+ ```output
+ Connecting to WiFi..
+ Connected!
+ Attempting MQTT connection...connected
+ Sending telemetry {"light":652}
+ Sending telemetry {"light":612}
+ Sending telemetry {"light":583}
+ ```
+
+> 💁 Tento kód najdete ve složce [code-telemetry/wio-terminal](../../../../../1-getting-started/lessons/4-connect-internet/code-telemetry/wio-terminal).
+
+😀 Úspěšně jste odeslali telemetrii ze svého zařízení.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/README.md b/translations/cs/2-farm/README.md
new file mode 100644
index 00000000..89a79e5b
--- /dev/null
+++ b/translations/cs/2-farm/README.md
@@ -0,0 +1,34 @@
+
+# Zemědělství s IoT
+
+S rostoucí populací roste i tlak na zemědělství. Množství dostupné půdy se nemění, ale klima ano – což přináší zemědělcům další výzvy, zejména 2 miliardám [samospotřebitelských zemědělců](https://wikipedia.org/wiki/Subsistence_agriculture), kteří se spoléhají na to, co vypěstují, aby mohli jíst a uživit své rodiny. IoT může zemědělcům pomoci dělat chytřejší rozhodnutí o tom, co pěstovat a kdy sklízet, zvýšit výnosy, snížit množství ruční práce a detekovat škůdce a bojovat proti nim.
+
+V těchto 6 lekcích se naučíte, jak využít Internet věcí ke zlepšení a automatizaci zemědělství.
+
+> 💁 Tyto lekce budou využívat některé cloudové zdroje. Pokud nebudete pokračovat ve všech lekcích tohoto projektu, nezapomeňte [vyčistit svůj projekt](../clean-up.md).
+
+## Témata
+
+1. [Předpověď růstu rostlin pomocí IoT](lessons/1-predict-plant-growth/README.md)
+1. [Detekce vlhkosti půdy](lessons/2-detect-soil-moisture/README.md)
+1. [Automatické zavlažování rostlin](lessons/3-automated-plant-watering/README.md)
+1. [Přesun vaší rostliny do cloudu](lessons/4-migrate-your-plant-to-the-cloud/README.md)
+1. [Přesun logiky aplikace do cloudu](lessons/5-migrate-application-to-the-cloud/README.md)
+1. [Zabezpečení vaší rostliny](lessons/6-keep-your-plant-secure/README.md)
+
+## Poděkování
+
+Všechny lekce byly napsány s ♥️ od [Jim Bennett](https://GitHub.com/JimBobBennett)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/README.md b/translations/cs/2-farm/lessons/1-predict-plant-growth/README.md
new file mode 100644
index 00000000..9dd1539e
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/README.md
@@ -0,0 +1,147 @@
+
+# Předpověď růstu rostlin pomocí IoT
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/9)
+
+## Úvod
+
+Rostliny potřebují k růstu určité podmínky – vodu, oxid uhličitý, živiny, světlo a teplo. V této lekci se naučíte, jak vypočítat rychlost růstu a zralosti rostlin měřením teploty vzduchu.
+
+V této lekci se zaměříme na:
+
+* [Digitální zemědělství](../../../../../2-farm/lessons/1-predict-plant-growth)
+* [Proč je teplota důležitá při zemědělství?](../../../../../2-farm/lessons/1-predict-plant-growth)
+* [Měření okolní teploty](../../../../../2-farm/lessons/1-predict-plant-growth)
+* [Stupně růstu (GDD)](../../../../../2-farm/lessons/1-predict-plant-growth)
+* [Výpočet GDD pomocí dat z teplotního senzoru](../../../../../2-farm/lessons/1-predict-plant-growth)
+
+## Digitální zemědělství
+
+Digitální zemědělství mění způsob, jakým hospodaříme, pomocí nástrojů pro sběr, ukládání a analýzu dat z farmářských činností. Nacházíme se v období, které Světové ekonomické fórum označuje jako „Čtvrtou průmyslovou revoluci“, a vzestup digitálního zemědělství je označován jako „Čtvrtá zemědělská revoluce“ nebo „Zemědělství 4.0“.
+
+> 🎓 Termín digitální zemědělství zahrnuje také celý „zemědělský hodnotový řetězec“, tedy celou cestu od farmy až na stůl. Zahrnuje sledování kvality produktů během přepravy a zpracování, skladové a e-commerce systémy, dokonce i aplikace na pronájem traktorů!
+
+Tyto změny umožňují farmářům zvýšit výnosy, používat méně hnojiv a pesticidů a efektivněji hospodařit s vodou. Ačkoli se tyto technologie primárně využívají v bohatších zemích, senzory a další zařízení postupně zlevňují, což je činí dostupnějšími i v rozvojových zemích.
+
+Některé techniky umožněné digitálním zemědělstvím zahrnují:
+
+* Měření teploty – měření teploty umožňuje farmářům předpovídat růst a zralost rostlin.
+* Automatické zavlažování – měření vlhkosti půdy a zapínání zavlažovacích systémů, když je půda příliš suchá, místo zavlažování podle časového plánu. Zavlažování podle času může vést k nedostatečnému zavlažování během horkého a suchého období nebo k přemokření během deště. Zavlažováním pouze tehdy, když to půda potřebuje, mohou farmáři optimalizovat spotřebu vody.
+* Ochrana proti škůdcům – farmáři mohou používat kamery na automatizovaných robotech nebo dronech k detekci škůdců a aplikovat pesticidy pouze tam, kde je to nutné, čímž se snižuje množství použitých pesticidů a jejich odtok do místních vodních zdrojů.
+
+✅ Udělejte si průzkum. Jaké další techniky se používají ke zlepšení zemědělských výnosů?
+
+> 🎓 Termín „precizní zemědělství“ označuje pozorování, měření a reakci na potřeby plodin na úrovni jednotlivých polí nebo dokonce jejich částí. To zahrnuje měření hladin vody, živin a škůdců a přesné reakce, například zavlažování pouze malé části pole.
+
+## Proč je teplota důležitá při zemědělství?
+
+Při studiu rostlin se většina studentů učí o nezbytnosti vody, světla, oxidu uhličitého a živin. Rostliny však také potřebují teplo k růstu – proto rostliny kvetou na jaře, když teplota stoupá, proč sněženky nebo narcisy mohou vyrašit brzy během krátkého teplého období, a proč jsou skleníky a pařeniště tak účinné pro růst rostlin.
+
+> 🎓 Skleníky a pařeniště mají podobnou funkci, ale s důležitým rozdílem. Pařeniště jsou uměle vytápěná a umožňují farmářům přesněji kontrolovat teplotu, zatímco skleníky spoléhají na sluneční teplo a obvykle mají pouze okna nebo jiné otvory pro regulaci teploty.
+
+Rostliny mají základní nebo minimální teplotu, optimální teplotu a maximální teplotu, vše založené na průměrných denních teplotách.
+
+* Základní teplota – minimální průměrná denní teplota potřebná pro růst rostliny.
+* Optimální teplota – nejlepší průměrná denní teplota pro maximální růst.
+* Maximální teplota – maximální teplota, kterou rostlina snese. Nad touto teplotou rostlina zastaví růst, aby šetřila vodu a přežila.
+
+> 💁 Tyto hodnoty jsou průměrné teploty, průměrované mezi denními a nočními teplotami. Rostliny také potřebují různé teploty ve dne a v noci, aby mohly efektivněji fotosyntetizovat a šetřit energii v noci.
+
+Každý druh rostliny má různé hodnoty pro základní, optimální a maximální teplotu. Proto některé rostliny prospívají v horkých zemích a jiné v chladnějších oblastech.
+
+✅ Udělejte si průzkum. Pro jakékoli rostliny ve vaší zahradě, škole nebo místním parku zkuste zjistit jejich základní teplotu.
+
+
+
+Výše uvedený graf ukazuje příklad závislosti rychlosti růstu na teplotě. Do základní teploty nedochází k žádnému růstu. Rychlost růstu se zvyšuje až do optimální teploty, poté klesá po dosažení vrcholu. Při maximální teplotě růst ustává.
+
+Tvar tohoto grafu se liší podle druhu rostliny. Některé mají prudší pokles nad optimální teplotou, jiné mají pomalejší nárůst od základní k optimální teplotě.
+
+> 💁 Aby farmář dosáhl nejlepšího růstu, musí znát tři teplotní hodnoty a pochopit tvar grafu pro rostliny, které pěstuje.
+
+Pokud má farmář kontrolu nad teplotou, například v komerčním pařeništi, může optimalizovat podmínky pro své rostliny. Komerční pařeniště pěstující rajčata například nastaví teplotu na přibližně 25 °C během dne a 20 °C v noci, aby dosáhlo nejrychlejšího růstu.
+
+> 🍅 Kombinace těchto teplot s umělým osvětlením, hnojivy a kontrolovanými úrovněmi CO
+Tento kód otevře soubor CSV a na jeho konec přidá nový řádek. Řádek obsahuje aktuální datum a čas formátovaný do podoby čitelné pro člověka, následovaný teplotou získanou z IoT zařízení. Data jsou uložena ve [formátu ISO 8601](https://wikipedia.org/wiki/ISO_8601) s časovým pásmem, ale bez mikrosekund.
+
+1. Spusťte tento kód stejným způsobem jako dříve, ujistěte se, že vaše IoT zařízení odesílá data. V téže složce bude vytvořen soubor CSV nazvaný `temperature.csv`. Pokud jej otevřete, uvidíte datum/čas a měření teploty:
+
+ ```output
+ date,temperature
+ 2021-04-19T17:21:36-07:00,25
+ 2021-04-19T17:31:36-07:00,24
+ 2021-04-19T17:41:36-07:00,25
+ ```
+
+1. Spusťte tento kód po určitou dobu, abyste zachytili data. Ideálně byste jej měli spustit po celý den, abyste získali dostatek dat pro výpočty GDD.
+
+
+> 💁 Pokud používáte virtuální IoT zařízení, zaškrtněte políčko "náhodně" a nastavte rozsah, abyste se vyhnuli získávání stejné teploty pokaždé, když se vrátí hodnota teploty.
+ 
+
+ > 💁 Pokud chcete tento kód spustit po celý den, musíte zajistit, aby počítač, na kterém běží váš serverový kód, nepřešel do režimu spánku. To můžete udělat buď změnou nastavení napájení, nebo spuštěním něčeho jako [tento Python skript pro udržení systému aktivního](https://github.com/jaqsparow/keep-system-active).
+
+> 💁 Tento kód najdete ve složce [code-server/temperature-sensor-server](../../../../../2-farm/lessons/1-predict-plant-growth/code-server/temperature-sensor-server).
+
+### Úkol - výpočet GDD pomocí uložených dat
+
+Jakmile server zachytí data o teplotě, lze vypočítat GDD pro rostlinu.
+
+Postup, jak to udělat ručně, je následující:
+
+1. Najděte základní teplotu pro rostlinu. Například pro jahody je základní teplota 10 °C.
+
+1. Ze souboru `temperature.csv` najděte nejvyšší a nejnižší teploty za den.
+
+1. Použijte výpočet GDD uvedený dříve k výpočtu GDD.
+
+Například, pokud je nejvyšší teplota za den 25 °C a nejnižší 12 °C:
+
+
+
+* 25 + 12 = 37
+* 37 / 2 = 18.5
+* 18.5 - 10 = 8.5
+
+Jahody tedy obdržely **8.5** GDD. Jahody potřebují asi 250 GDD, aby začaly plodit, takže je ještě čas.
+
+---
+
+## 🚀 Výzva
+
+Rostliny potřebují k růstu více než jen teplo. Co dalšího je potřeba?
+
+Pro tyto faktory zjistěte, zda existují senzory, které je mohou měřit. Co třeba akční členy pro kontrolu těchto úrovní? Jak byste sestavili jedno nebo více IoT zařízení pro optimalizaci růstu rostlin?
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/10)
+
+## Přehled & Samostudium
+
+* Přečtěte si více o digitálním zemědělství na [stránce Wikipedie o digitálním zemědělství](https://wikipedia.org/wiki/Digital_agriculture). Také si přečtěte více o precizním zemědělství na [stránce Wikipedie o precizním zemědělství](https://wikipedia.org/wiki/Precision_agriculture).
+* Úplný výpočet stupňů růstu (GDD) je složitější než zjednodušený uvedený zde. Přečtěte si více o složitější rovnici a o tom, jak se vypořádat s teplotami pod základní hodnotou na [stránce Wikipedie o stupních růstu](https://wikipedia.org/wiki/Growing_degree-day).
+* Potraviny mohou být v budoucnu nedostatkové, pokud budeme stále používat stejné metody zemědělství. Zjistěte více o vysoce technologických zemědělských technikách v tomto [videu o hi-tech farmách budoucnosti na YouTube](https://www.youtube.com/watch?v=KIEOuKD9KX8).
+
+## Zadání
+
+[Vizualizujte data GDD pomocí Jupyter Notebooku](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/assignment.md b/translations/cs/2-farm/lessons/1-predict-plant-growth/assignment.md
new file mode 100644
index 00000000..a5bc630c
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/assignment.md
@@ -0,0 +1,57 @@
+
+# Vizualizace dat GDD pomocí Jupyter Notebooku
+
+## Instrukce
+
+V této lekci jste získali data GDD pomocí IoT senzoru. Abyste získali kvalitní data GDD, je potřeba sbírat data po několik dní. K vizualizaci teplotních dat a výpočtu GDD můžete použít nástroje jako [Jupyter Notebooks](https://jupyter.org) k analýze dat.
+
+Začněte sběrem dat po několik dní. Musíte zajistit, aby váš serverový kód běžel po celou dobu, kdy je vaše IoT zařízení aktivní, buď úpravou nastavení správy napájení, nebo spuštěním něčeho jako [tento Python skript pro udržení systému aktivního](https://github.com/jaqsparow/keep-system-active).
+
+Jakmile máte teplotní data, můžete použít Jupyter Notebook v tomto repozitáři k jejich vizualizaci a výpočtu GDD. Jupyter notebooky kombinují kód a instrukce v blocích nazývaných *buňky*, často s kódem v Pythonu. Můžete si přečíst instrukce a poté spustit každý blok kódu, jeden po druhém. Kód můžete také upravovat. Například v tomto notebooku můžete upravit základní teplotu použitou k výpočtu GDD pro vaši rostlinu.
+
+1. Vytvořte složku nazvanou `gdd-calculation`
+
+1. Stáhněte soubor [gdd.ipynb](./code-notebook/gdd.ipynb) a zkopírujte jej do složky `gdd-calculation`.
+
+1. Zkopírujte soubor `temperature.csv`, který vytvořil MQTT server.
+
+1. Vytvořte nový Python virtuální prostředí ve složce `gdd-calculation`.
+
+1. Nainstalujte pomocí pip balíčky pro Jupyter notebooky spolu s knihovnami potřebnými pro správu a vizualizaci dat:
+
+ ```sh
+ pip install --upgrade pip
+ pip install pandas
+ pip install matplotlib
+ pip install jupyter
+ ```
+
+1. Spusťte notebook v Jupyteru:
+
+ ```sh
+ jupyter notebook gdd.ipynb
+ ```
+
+ Jupyter se spustí a otevře notebook ve vašem prohlížeči. Projděte si instrukce v notebooku, vizualizujte naměřené teploty a vypočítejte růstové stupně (GDD).
+
+ 
+
+## Hodnocení
+
+| Kritéria | Vynikající | Přiměřené | Vyžaduje zlepšení |
+| -------- | ---------- | --------- | ----------------- |
+| Sběr dat | Získání alespoň 2 kompletních dnů dat | Získání alespoň 1 kompletního dne dat | Získání nějakých dat |
+| Výpočet GDD | Úspěšné spuštění notebooku a výpočet GDD | Úspěšné spuštění notebooku | Neschopnost spustit notebook |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/code-notebook/gdd.ipynb b/translations/cs/2-farm/lessons/1-predict-plant-growth/code-notebook/gdd.ipynb
new file mode 100644
index 00000000..41be6ba6
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/code-notebook/gdd.ipynb
@@ -0,0 +1,167 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Stupně růstu (Growing Degree Days)\n",
+ "\n",
+ "Tento zápis načítá teplotní data uložená v CSV souboru a analyzuje je. Vykresluje teploty, zobrazuje nejvyšší a nejnižší hodnotu pro každý den a vypočítává GDD.\n",
+ "\n",
+ "Pro použití tohoto zápisu:\n",
+ "\n",
+ "* Zkopírujte soubor `temperature.csv` do stejné složky jako tento zápis\n",
+ "* Spusťte všechny buňky pomocí tlačítka **▶︎ Spustit** nahoře. Tím spustíte vybranou buňku a poté přejdete na další.\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "V níže uvedené buňce nastavte `base_temperature` na základní teplotu rostliny.\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "base_temperature = 10"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Soubor CSV nyní musí být načten pomocí pandas\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import matplotlib.pyplot as plt\n",
+ "\n",
+ "# Read the temperature CSV file\n",
+ "df = pd.read_csv('temperature.csv')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": []
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "plt.figure(figsize=(20, 10))\n",
+ "plt.plot(df['date'], df['temperature'])\n",
+ "plt.xticks(rotation='vertical');"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Jakmile jsou data načtena, lze je seskupit podle sloupce `date` a pro každý datum extrahovat minimální a maximální teploty.\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Convert datetimes to pure dates so we can group by the date\n",
+ "df['date'] = pd.to_datetime(df['date']).dt.date\n",
+ "\n",
+ "# Group the data by date so it can be analyzed by date\n",
+ "data_by_date = df.groupby('date')\n",
+ "\n",
+ "# Get the minimum and maximum temperatures for each date\n",
+ "min_by_date = data_by_date.min()\n",
+ "max_by_date = data_by_date.max()\n",
+ "\n",
+ "# Join the min and max temperatures into one dataframe and flatten it\n",
+ "min_max_by_date = min_by_date.join(max_by_date, on='date', lsuffix='_min', rsuffix='_max')\n",
+ "min_max_by_date = min_max_by_date.reset_index()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "GDD lze vypočítat pomocí standardní rovnice GDD\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def calculate_gdd(row):\n",
+ " return ((row['temperature_max'] + row['temperature_min']) / 2) - base_temperature\n",
+ "\n",
+ "# Calculate the GDD for each row\n",
+ "min_max_by_date['gdd'] = min_max_by_date.apply (lambda row: calculate_gdd(row), axis=1)\n",
+ "\n",
+ "# Print the results\n",
+ "print(min_max_by_date[['date', 'gdd']].to_string(index=False))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "\n---\n\n**Prohlášení**: \nTento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro kritické informace se doporučuje profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.\n"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.1"
+ },
+ "metadata": {
+ "interpreter": {
+ "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49"
+ }
+ },
+ "coopTranslator": {
+ "original_hash": "8fcf954f6042f0bf3601a2c836a09574",
+ "translation_date": "2025-08-27T23:32:00+00:00",
+ "source_file": "2-farm/lessons/1-predict-plant-growth/code-notebook/gdd.ipynb",
+ "language_code": "cs"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/pi-temp.md b/translations/cs/2-farm/lessons/1-predict-plant-growth/pi-temp.md
new file mode 100644
index 00000000..b3e8a636
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/pi-temp.md
@@ -0,0 +1,125 @@
+
+# Měření teploty - Raspberry Pi
+
+V této části lekce přidáte k Raspberry Pi teplotní senzor.
+
+## Hardware
+
+Senzor, který použijete, je [DHT11 senzor vlhkosti a teploty](https://www.seeedstudio.com/Grove-Temperature-Humidity-Sensor-DHT11.html), který kombinuje 2 senzory v jednom balení. Tento senzor je poměrně populární a existuje mnoho komerčně dostupných senzorů, které kombinují měření teploty, vlhkosti a někdy i atmosférického tlaku. Komponenta pro měření teploty je termistor s negativním teplotním koeficientem (NTC), což je termistor, jehož odpor klesá s rostoucí teplotou.
+
+Jedná se o digitální senzor, který má vestavěný ADC (analogově-digitální převodník) pro vytvoření digitálního signálu obsahujícího data o teplotě a vlhkosti, která může mikrořadič číst.
+
+### Připojení teplotního senzoru
+
+Teplotní senzor Grove lze připojit k Raspberry Pi.
+
+#### Úkol
+
+Připojte teplotní senzor.
+
+
+
+1. Zasuňte jeden konec kabelu Grove do konektoru na senzoru vlhkosti a teploty. Kabel lze zasunout pouze jedním směrem.
+
+1. S vypnutým Raspberry Pi připojte druhý konec kabelu Grove do digitálního konektoru označeného **D5** na Grove Base hat připojeném k Pi. Tento konektor je druhý zleva v řadě konektorů vedle GPIO pinů.
+
+
+
+## Naprogramování teplotního senzoru
+
+Zařízení nyní může být naprogramováno pro použití připojeného teplotního senzoru.
+
+### Úkol
+
+Naprogramujte zařízení.
+
+1. Zapněte Pi a počkejte, až se spustí.
+
+1. Spusťte VS Code, buď přímo na Pi, nebo se připojte pomocí rozšíření Remote SSH.
+
+ > ⚠️ Pokud potřebujete, můžete se podívat na [instrukce pro nastavení a spuštění VS Code v lekci 1](../../../1-getting-started/lessons/1-introduction-to-iot/pi.md).
+
+1. Z terminálu vytvořte novou složku v domovském adresáři uživatele `pi` s názvem `temperature-sensor`. V této složce vytvořte soubor s názvem `app.py`:
+
+ ```sh
+ mkdir temperature-sensor
+ cd temperature-sensor
+ touch app.py
+ ```
+
+1. Otevřete tuto složku ve VS Code.
+
+1. Pro použití senzoru vlhkosti a teploty je třeba nainstalovat další balíček Pip. Z terminálu ve VS Code spusťte následující příkaz pro instalaci tohoto balíčku na Pi:
+
+ ```sh
+ pip3 install seeed-python-dht
+ ```
+
+1. Přidejte následující kód do souboru `app.py` pro import potřebných knihoven:
+
+ ```python
+ import time
+ from seeed_dht import DHT
+ ```
+
+ Příkaz `from seeed_dht import DHT` importuje třídu `DHT` pro interakci se senzorem teploty Grove z modulu `seeed_dht`.
+
+1. Přidejte následující kód za výše uvedený kód pro vytvoření instance třídy, která spravuje teplotní senzor:
+
+ ```python
+ sensor = DHT("11", 5)
+ ```
+
+ Tento kód deklaruje instanci třídy `DHT`, která spravuje **D**igitální **H**umidity a **T**emperature senzor. První parametr říká kódu, že použitý senzor je *DHT11* - knihovna, kterou používáte, podporuje i jiné varianty tohoto senzoru. Druhý parametr říká kódu, že senzor je připojen k digitálnímu portu `D5` na Grove Base hat.
+
+ > ✅ Pamatujte, že všechny konektory mají unikátní čísla pinů. Piny 0, 2, 4 a 6 jsou analogové piny, piny 5, 16, 18, 22, 24 a 26 jsou digitální piny.
+
+1. Přidejte nekonečnou smyčku za výše uvedený kód pro čtení hodnoty teplotního senzoru a její výpis do konzole:
+
+ ```python
+ while True:
+ _, temp = sensor.read()
+ print(f'Temperature {temp}°C')
+ ```
+
+ Volání `sensor.read()` vrací dvojici hodnot vlhkosti a teploty. Potřebujete pouze hodnotu teploty, takže vlhkost je ignorována. Hodnota teploty je poté vypsána do konzole.
+
+1. Přidejte krátkou pauzu deset sekund na konci `loop`, protože úroveň teploty není třeba kontrolovat nepřetržitě. Pauza snižuje spotřebu energie zařízení.
+
+ ```python
+ time.sleep(10)
+ ```
+
+1. Z terminálu ve VS Code spusťte následující příkaz pro spuštění vaší Python aplikace:
+
+ ```sh
+ python3 app.py
+ ```
+
+ Měli byste vidět hodnoty teploty vypisované do konzole. Použijte něco k zahřátí senzoru, například přitisknutí palce na něj nebo použití ventilátoru, abyste viděli změny hodnot:
+
+ ```output
+ pi@raspberrypi:~/temperature-sensor $ python3 app.py
+ Temperature 26°C
+ Temperature 26°C
+ Temperature 28°C
+ Temperature 30°C
+ Temperature 32°C
+ ```
+
+> 💁 Tento kód najdete ve složce [code-temperature/pi](../../../../../2-farm/lessons/1-predict-plant-growth/code-temperature/pi).
+
+😀 Vaše programování teplotního senzoru bylo úspěšné!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-publish.md b/translations/cs/2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-publish.md
new file mode 100644
index 00000000..5778be41
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-publish.md
@@ -0,0 +1,71 @@
+
+# Publikování teploty - Virtuální IoT hardware a Raspberry Pi
+
+V této části lekce budete publikovat hodnoty teploty detekované Raspberry Pi nebo Virtuálním IoT zařízením přes MQTT, aby mohly být později použity k výpočtu GDD.
+
+## Publikování teploty
+
+Jakmile je teplota přečtena, může být publikována přes MQTT do nějakého "serverového" kódu, který hodnoty přečte a uloží je, aby mohly být použity pro výpočet GDD.
+
+### Úkol - publikování teploty
+
+Naprogramujte zařízení tak, aby publikovalo data o teplotě.
+
+1. Otevřete projekt aplikace `temperature-sensor`, pokud již není otevřený.
+
+1. Opakujte kroky, které jste provedli v lekci 4, pro připojení k MQTT a odesílání telemetrie. Budete používat stejný veřejný Mosquitto broker.
+
+ Kroky jsou následující:
+
+ - Přidejte balíček pip pro MQTT
+ - Přidejte kód pro připojení k MQTT brokeru
+ - Přidejte kód pro publikování telemetrie
+
+ > ⚠️ Podívejte se na [pokyny pro připojení k MQTT](../../../1-getting-started/lessons/4-connect-internet/single-board-computer-mqtt.md) a [pokyny pro odesílání telemetrie](../../../1-getting-started/lessons/4-connect-internet/single-board-computer-telemetry.md) z lekce 4, pokud je to potřeba.
+
+1. Ujistěte se, že `client_name` odráží název tohoto projektu:
+
+ ```python
+ client_name = id + 'temperature_sensor_client'
+ ```
+
+1. Pro telemetrii místo odesílání hodnoty světla odešlete hodnotu teploty přečtenou ze senzoru DHT v atributu JSON dokumentu nazvaném `temperature`:
+
+ ```python
+ _, temp = sensor.read()
+ telemetry = json.dumps({'temperature' : temp})
+ ```
+
+1. Hodnotu teploty není třeba číst příliš často - v krátkém časovém úseku se příliš nemění, proto nastavte `time.sleep` na 10 minut:
+
+ ```cpp
+ time.sleep(10 * 60);
+ ```
+
+ > 💁 Funkce `sleep` bere čas v sekundách, takže pro snadnější čtení je hodnota předána jako výsledek výpočtu. 60 sekund je v minutě, takže 10 x (60 sekund v minutě) dává 10minutové zpoždění.
+
+1. Spusťte kód stejným způsobem, jako jste spustili kód z předchozí části úkolu. Pokud používáte virtuální IoT zařízení, ujistěte se, že aplikace CounterFit běží a senzory vlhkosti a teploty byly vytvořeny na správných pinech.
+
+ ```output
+ pi@raspberrypi:~/temperature-sensor $ python3 app.py
+ MQTT connected!
+ Sending telemetry {"temperature": 25}
+ Sending telemetry {"temperature": 25}
+ ```
+
+> 💁 Tento kód najdete ve složce [code-publish-temperature/virtual-device](../../../../../2-farm/lessons/1-predict-plant-growth/code-publish-temperature/virtual-device) nebo ve složce [code-publish-temperature/pi](../../../../../2-farm/lessons/1-predict-plant-growth/code-publish-temperature/pi).
+
+😀 Úspěšně jste publikovali teplotu jako telemetrii z vašeho zařízení.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/virtual-device-temp.md b/translations/cs/2-farm/lessons/1-predict-plant-growth/virtual-device-temp.md
new file mode 100644
index 00000000..e5e295b3
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/virtual-device-temp.md
@@ -0,0 +1,154 @@
+
+# Měření teploty - Virtuální IoT hardware
+
+V této části lekce přidáte teplotní senzor do svého virtuálního IoT zařízení.
+
+## Virtuální hardware
+
+Virtuální IoT zařízení bude používat simulovaný senzor Grove Digital Humidity and Temperature. Tento přístup udržuje tento lab stejný jako při použití Raspberry Pi s fyzickým senzorem Grove DHT11.
+
+Senzor kombinuje **teplotní senzor** a **senzor vlhkosti**, ale v tomto labu vás zajímá pouze komponenta teplotního senzoru. U fyzického IoT zařízení by teplotní senzor byl [termistor](https://wikipedia.org/wiki/Thermistor), který měří teplotu na základě změny odporu při změně teploty. Teplotní senzory jsou obvykle digitální senzory, které interně převádějí naměřený odpor na teplotu ve stupních Celsia (nebo Kelvina, nebo Fahrenheita).
+
+### Přidání senzorů do CounterFit
+
+Pro použití virtuálního senzoru vlhkosti a teploty je třeba přidat tyto dva senzory do aplikace CounterFit.
+
+#### Úkol - přidání senzorů do CounterFit
+
+Přidejte senzory vlhkosti a teploty do aplikace CounterFit.
+
+1. Vytvořte novou Python aplikaci na svém počítači ve složce `temperature-sensor` s jediným souborem `app.py` a Python virtuálním prostředím, a přidejte CounterFit pip balíčky.
+
+ > ⚠️ Můžete se odkázat na [instrukce pro vytvoření a nastavení CounterFit Python projektu v lekci 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/virtual-device.md).
+
+1. Nainstalujte další Pip balíček pro instalaci CounterFit shim pro senzor DHT11. Ujistěte se, že instalaci provádíte z terminálu s aktivovaným virtuálním prostředím.
+
+ ```sh
+ pip install counterfit-shims-seeed-python-dht
+ ```
+
+1. Ujistěte se, že webová aplikace CounterFit běží.
+
+1. Vytvořte senzor vlhkosti:
+
+ 1. V poli *Create sensor* v panelu *Sensors* rozbalte pole *Sensor type* a vyberte *Humidity*.
+
+ 1. Nechte *Units* nastavené na *Percentage*.
+
+ 1. Ujistěte se, že *Pin* je nastaven na *5*.
+
+ 1. Klikněte na tlačítko **Add** pro vytvoření senzoru vlhkosti na pinu 5.
+
+ 
+
+ Senzor vlhkosti bude vytvořen a objeví se v seznamu senzorů.
+
+ 
+
+1. Vytvořte teplotní senzor:
+
+ 1. V poli *Create sensor* v panelu *Sensors* rozbalte pole *Sensor type* a vyberte *Temperature*.
+
+ 1. Nechte *Units* nastavené na *Celsius*.
+
+ 1. Ujistěte se, že *Pin* je nastaven na *6*.
+
+ 1. Klikněte na tlačítko **Add** pro vytvoření teplotního senzoru na pinu 6.
+
+ 
+
+ Teplotní senzor bude vytvořen a objeví se v seznamu senzorů.
+
+ 
+
+## Naprogramování aplikace pro teplotní senzor
+
+Nyní můžete naprogramovat aplikaci pro teplotní senzor pomocí senzorů CounterFit.
+
+### Úkol - naprogramování aplikace pro teplotní senzor
+
+Naprogramujte aplikaci pro teplotní senzor.
+
+1. Ujistěte se, že aplikace `temperature-sensor` je otevřená ve VS Code.
+
+1. Otevřete soubor `app.py`.
+
+1. Přidejte následující kód na začátek souboru `app.py` pro připojení aplikace k CounterFit:
+
+ ```python
+ from counterfit_connection import CounterFitConnection
+ CounterFitConnection.init('127.0.0.1', 5000)
+ ```
+
+1. Přidejte následující kód do souboru `app.py` pro import potřebných knihoven:
+
+ ```python
+ import time
+ from counterfit_shims_seeed_python_dht import DHT
+ ```
+
+ Příkaz `from seeed_dht import DHT` importuje třídu `DHT` pro interakci s virtuálním Grove teplotním senzorem pomocí shim z modulu `counterfit_shims_seeed_python_dht`.
+
+1. Přidejte následující kód za výše uvedený kód pro vytvoření instance třídy, která spravuje virtuální senzor vlhkosti a teploty:
+
+ ```python
+ sensor = DHT("11", 5)
+ ```
+
+ Tento kód deklaruje instanci třídy `DHT`, která spravuje virtuální **D**igitální **H**umidity a **T**emperature senzor. První parametr říká kódu, že použitý senzor je virtuální senzor *DHT11*. Druhý parametr říká kódu, že senzor je připojen k portu `5`.
+
+ > 💁 CounterFit simuluje tento kombinovaný senzor vlhkosti a teploty připojením ke dvěma senzorům: senzoru vlhkosti na pinu uvedeném při vytvoření třídy `DHT` a teplotnímu senzoru, který běží na dalším pinu. Pokud je senzor vlhkosti na pinu 5, shim očekává, že teplotní senzor bude na pinu 6.
+
+1. Přidejte nekonečnou smyčku za výše uvedený kód pro čtení hodnoty teplotního senzoru a její výpis do konzole:
+
+ ```python
+ while True:
+ _, temp = sensor.read()
+ print(f'Temperature {temp}°C')
+ ```
+
+ Volání `sensor.read()` vrací dvojici hodnot vlhkosti a teploty. Potřebujete pouze hodnotu teploty, takže vlhkost je ignorována. Hodnota teploty je poté vypsána do konzole.
+
+1. Přidejte na konec smyčky krátkou pauzu deset sekund, protože není nutné kontrolovat úroveň teploty neustále. Pauza snižuje spotřebu energie zařízení.
+
+ ```python
+ time.sleep(10)
+ ```
+
+1. Z terminálu ve VS Code s aktivovaným virtuálním prostředím spusťte následující příkaz pro spuštění vaší Python aplikace:
+
+ ```sh
+ python app.py
+ ```
+
+1. V aplikaci CounterFit změňte hodnotu teplotního senzoru, kterou bude aplikace číst. Můžete to udělat dvěma způsoby:
+
+ * Zadejte číslo do pole *Value* pro teplotní senzor a poté klikněte na tlačítko **Set**. Číslo, které zadáte, bude hodnota vrácená senzorem.
+
+ * Zaškrtněte políčko *Random* a zadejte hodnoty *Min* a *Max*, poté klikněte na tlačítko **Set**. Při každém čtení hodnoty senzoru se přečte náhodné číslo mezi *Min* a *Max*.
+
+ Měli byste vidět hodnoty, které jste nastavili, objevující se v konzoli. Změňte *Value* nebo nastavení *Random*, abyste viděli změnu hodnoty.
+
+ ```output
+ (.venv) ➜ temperature-sensor python app.py
+ Temperature 28.25°C
+ Temperature 30.71°C
+ Temperature 25.17°C
+ ```
+
+> 💁 Tento kód najdete ve složce [code-temperature/virtual-device](../../../../../2-farm/lessons/1-predict-plant-growth/code-temperature/virtual-device).
+
+😀 Vaše aplikace pro teplotní senzor byla úspěšně vytvořena!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/wio-terminal-temp-publish.md b/translations/cs/2-farm/lessons/1-predict-plant-growth/wio-terminal-temp-publish.md
new file mode 100644
index 00000000..6ce6fcb8
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/wio-terminal-temp-publish.md
@@ -0,0 +1,82 @@
+
+# Publikování teploty - Wio Terminal
+
+V této části lekce budete publikovat hodnoty teploty detekované Wio Terminalem přes MQTT, aby mohly být později použity k výpočtu GDD.
+
+## Publikování teploty
+
+Jakmile je teplota přečtena, může být publikována přes MQTT do nějakého "serverového" kódu, který hodnoty přečte a uloží je, aby mohly být použity pro výpočet GDD. Mikrokontroléry standardně nečtou čas z internetu a nesledují čas pomocí reálného časového modulu, zařízení musí být naprogramováno, aby to zvládlo, za předpokladu, že má potřebný hardware.
+
+Abychom věci v této lekci zjednodušili, čas nebude odesílán spolu s daty ze senzoru, místo toho může být přidán serverovým kódem později, když přijme zprávy.
+
+### Úkol
+
+Naprogramujte zařízení tak, aby publikovalo data o teplotě.
+
+1. Otevřete projekt `temperature-sensor` pro Wio Terminal.
+
+1. Opakujte kroky, které jste provedli v lekci 4, abyste se připojili k MQTT a odeslali telemetrii. Budete používat stejný veřejný Mosquitto broker.
+
+ Kroky jsou následující:
+
+ - Přidejte knihovny Seeed WiFi a MQTT do souboru `.ini`.
+ - Přidejte konfigurační soubor a kód pro připojení k WiFi.
+ - Přidejte kód pro připojení k MQTT brokeru.
+ - Přidejte kód pro publikování telemetrie.
+
+ > ⚠️ Podívejte se na [instrukce pro připojení k MQTT](../../../1-getting-started/lessons/4-connect-internet/wio-terminal-mqtt.md) a [instrukce pro odesílání telemetrie](../../../1-getting-started/lessons/4-connect-internet/wio-terminal-telemetry.md) z lekce 4, pokud je to potřeba.
+
+1. Ujistěte se, že `CLIENT_NAME` v hlavičkovém souboru `config.h` odpovídá tomuto projektu:
+
+ ```cpp
+ const string CLIENT_NAME = ID + "temperature_sensor_client";
+ ```
+
+1. Pro telemetrii, místo odesílání hodnoty světla, odešlete hodnotu teploty přečtenou ze senzoru DHT jako vlastnost v JSON dokumentu nazvanou `temperature` změnou funkce `loop` v souboru `main.cpp`:
+
+ ```cpp
+ float temp_hum_val[2] = {0};
+ dht.readTempAndHumidity(temp_hum_val);
+
+ DynamicJsonDocument doc(1024);
+ doc["temperature"] = temp_hum_val[1];
+ ```
+
+1. Hodnota teploty nemusí být čtena příliš často - v krátkém časovém úseku se příliš nezmění, takže nastavte `delay` ve funkci `loop` na 10 minut:
+
+ ```cpp
+ delay(10 * 60 * 1000);
+ ```
+
+ > 💁 Funkce `delay` bere čas v milisekundách, takže pro snadnější čtení je hodnota předána jako výsledek výpočtu. 1 000 ms je jedna sekunda, 60 sekund je jedna minuta, takže 10 x (60 sekund v minutě) x (1 000 ms v sekundě) dává zpoždění 10 minut.
+
+1. Nahrajte tento kód do svého Wio Terminalu a použijte sériový monitor, abyste viděli, jak se teplota odesílá do MQTT brokeru.
+
+ ```output
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Connecting to WiFi..
+ Connected!
+ Attempting MQTT connection...connected
+ Sending telemetry {"temperature":25}
+ Sending telemetry {"temperature":25}
+ ```
+
+> 💁 Tento kód najdete ve složce [code-publish-temperature/wio-terminal](../../../../../2-farm/lessons/1-predict-plant-growth/code-publish-temperature/wio-terminal).
+
+😀 Úspěšně jste publikovali teplotu jako telemetrii ze svého zařízení.
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/1-predict-plant-growth/wio-terminal-temp.md b/translations/cs/2-farm/lessons/1-predict-plant-growth/wio-terminal-temp.md
new file mode 100644
index 00000000..d6f616ba
--- /dev/null
+++ b/translations/cs/2-farm/lessons/1-predict-plant-growth/wio-terminal-temp.md
@@ -0,0 +1,143 @@
+
+# Měření teploty - Wio Terminal
+
+V této části lekce přidáte k Wio Terminalu teplotní senzor a budete z něj číst hodnoty teploty.
+
+## Hardware
+
+Wio Terminal potřebuje teplotní senzor.
+
+Senzor, který použijete, je [DHT11 senzor vlhkosti a teploty](https://www.seeedstudio.com/Grove-Temperature-Humidity-Sensor-DHT11.html), který kombinuje 2 senzory v jednom balení. Tento senzor je poměrně populární a existuje mnoho komerčně dostupných senzorů, které kombinují měření teploty, vlhkosti a někdy i atmosférického tlaku. Komponenta pro měření teploty je termistor s negativním teplotním koeficientem (NTC), což je termistor, jehož odpor klesá s rostoucí teplotou.
+
+Jedná se o digitální senzor, takže má vestavěný ADC, který vytváří digitální signál obsahující data o teplotě a vlhkosti, která může mikrořadič číst.
+
+### Připojení teplotního senzoru
+
+Grove teplotní senzor lze připojit k digitálnímu portu Wio Terminalu.
+
+#### Úkol - připojte teplotní senzor
+
+Připojte teplotní senzor.
+
+
+
+1. Zasuňte jeden konec Grove kabelu do konektoru na senzoru vlhkosti a teploty. Kabel lze zasunout pouze jedním směrem.
+
+1. S Wio Terminalem odpojeným od počítače nebo jiného zdroje napájení připojte druhý konec Grove kabelu do pravého Grove konektoru na Wio Terminalu, když se díváte na obrazovku. Jedná se o konektor nejdále od tlačítka napájení.
+
+
+
+## Naprogramování teplotního senzoru
+
+Wio Terminal nyní může být naprogramován tak, aby používal připojený teplotní senzor.
+
+### Úkol - naprogramujte teplotní senzor
+
+Naprogramujte zařízení.
+
+1. Vytvořte zcela nový projekt pro Wio Terminal pomocí PlatformIO. Nazvěte tento projekt `temperature-sensor`. Přidejte kód do funkce `setup` pro konfiguraci sériového portu.
+
+ > ⚠️ Můžete se podívat na [instrukce pro vytvoření projektu v PlatformIO v projektu 1, lekci 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#create-a-platformio-project).
+
+1. Přidejte závislost na knihovnu Seeed Grove Humidity and Temperature sensor do souboru `platformio.ini` projektu:
+
+ ```ini
+ lib_deps =
+ seeed-studio/Grove Temperature And Humidity Sensor @ 1.0.1
+ ```
+
+ > ⚠️ Můžete se podívat na [instrukce pro přidání knihoven do projektu v PlatformIO v projektu 1, lekci 4, pokud je to potřeba](../../../1-getting-started/lessons/4-connect-internet/wio-terminal-mqtt.md#install-the-wifi-and-mqtt-arduino-libraries).
+
+1. Přidejte následující direktivy `#include` na začátek souboru, pod existující `#include `:
+
+ ```cpp
+ #include
+ #include
+ ```
+
+ Tyto direktivy importují soubory potřebné pro interakci se senzorem. Hlavičkový soubor `DHT.h` obsahuje kód pro samotný senzor a přidání hlavičkového souboru `SPI.h` zajistí, že kód potřebný pro komunikaci se senzorem bude zahrnut při kompilaci aplikace.
+
+1. Před funkcí `setup` deklarujte senzor DHT:
+
+ ```cpp
+ DHT dht(D0, DHT11);
+ ```
+
+ Tímto deklarujete instanci třídy `DHT`, která spravuje **D**igitální **H**umidity a **T**emperature senzor. Tento senzor je připojen k portu `D0`, což je pravý Grove konektor na Wio Terminalu. Druhý parametr říká kódu, že použitý senzor je *DHT11* - knihovna, kterou používáte, podporuje i jiné varianty tohoto senzoru.
+
+1. Ve funkci `setup` přidejte kód pro nastavení sériového připojení:
+
+ ```cpp
+ void setup()
+ {
+ Serial.begin(9600);
+
+ while (!Serial)
+ ; // Wait for Serial to be ready
+
+ delay(1000);
+ }
+ ```
+
+1. Na konci funkce `setup`, po posledním `delay`, přidejte volání pro spuštění senzoru DHT:
+
+ ```cpp
+ dht.begin();
+ ```
+
+1. Ve funkci `loop` přidejte kód pro volání senzoru a tisk teploty na sériový port:
+
+ ```cpp
+ void loop()
+ {
+ float temp_hum_val[2] = {0};
+ dht.readTempAndHumidity(temp_hum_val);
+ Serial.print("Temperature: ");
+ Serial.print(temp_hum_val[1]);
+ Serial.println ("°C");
+
+ delay(10000);
+ }
+ ```
+
+ Tento kód deklaruje prázdné pole o velikosti 2 floatů a předává ho volání `readTempAndHumidity` na instanci `DHT`. Toto volání naplní pole dvěma hodnotami - vlhkost se uloží do 0. položky pole (pamatujte, že v C++ jsou pole indexována od 0, takže 0. položka je 'první' položka pole) a teplota se uloží do 1. položky.
+
+ Teplota se přečte z 1. položky pole a vytiskne na sériový port.
+
+ > 🇺🇸 Teplota se čte v Celsiích. Pro Američany, pokud chcete převést tuto hodnotu na Fahrenheit, vydělte hodnotu v Celsiích 5, poté vynásobte 9 a přidejte 32. Například teplotní hodnota 20°C se převede na ((20/5)*9) + 32 = 68°F.
+
+1. Zkompilujte a nahrajte kód do Wio Terminalu.
+
+ > ⚠️ Můžete se podívat na [instrukce pro vytvoření projektu v PlatformIO v projektu 1, lekci 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#write-the-hello-world-app).
+
+1. Po nahrání můžete sledovat teplotu pomocí sériového monitoru:
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Temperature: 25.00°C
+ Temperature: 25.00°C
+ Temperature: 25.00°C
+ Temperature: 24.00°C
+ ```
+
+> 💁 Tento kód najdete ve složce [code-temperature/wio-terminal](../../../../../2-farm/lessons/1-predict-plant-growth/code-temperature/wio-terminal).
+
+😀 Program pro váš teplotní senzor byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/2-detect-soil-moisture/README.md b/translations/cs/2-farm/lessons/2-detect-soil-moisture/README.md
new file mode 100644
index 00000000..56f88abf
--- /dev/null
+++ b/translations/cs/2-farm/lessons/2-detect-soil-moisture/README.md
@@ -0,0 +1,169 @@
+
+C, vyslovováno *I-squared-C*, je protokol pro komunikaci mezi více řadiči a periferiemi, kde každé připojené zařízení může fungovat jako řadič nebo periferie komunikující přes I²C sběrnici (název pro systém přenosu dat). Data jsou posílána jako adresované pakety, přičemž každý paket obsahuje adresu zařízení, pro které je určen.
+
+> 💁 Tento model byl dříve označován jako master/slave, ale tato terminologie se opouští kvůli její spojitosti s otroctvím. [Open Source Hardware Association přijala označení controller/peripheral](https://www.oshwa.org/a-resolution-to-redefine-spi-signal-names/), ale stále můžete narazit na odkazy na starou terminologii.
+
+Zařízení mají adresu, která se používá při připojení k I²C sběrnici, a obvykle je pevně nastavena na zařízení. Například každý typ Grove senzoru od Seeed má stejnou adresu, takže všechny světelné senzory mají stejnou adresu, všechny tlačítka mají stejnou adresu, která se liší od adresy světelného senzoru. Některá zařízení umožňují změnit adresu, například změnou nastavení jumperů nebo propojením pinů.
+
+I²C má sběrnici složenou ze 2 hlavních vodičů spolu s 2 napájecími vodiči:
+
+| Vodič | Název | Popis |
+| ---- | --------- | ----------- |
+| SDA | Serial Data | Tento vodič slouží k přenosu dat mezi zařízeními. |
+| SCL | Serial Clock | Tento vodič posílá hodinový signál rychlostí nastavenou řadičem. |
+| VCC | Voltage common collector | Napájení pro zařízení. Je připojeno k vodičům SDA a SCL, aby jim poskytovalo napájení přes pull-up rezistor, který vypíná signál, když žádné zařízení není řadičem. |
+| GND | Ground | Poskytuje společnou zem pro elektrický obvod. |
+
+
+
+Pro přenos dat jedno zařízení vydá startovací podmínku, aby ukázalo, že je připraveno posílat data. Poté se stane řadičem. Řadič následně pošle adresu zařízení, se kterým chce komunikovat, spolu s informací, zda chce data číst nebo zapisovat. Po přenosu dat řadič pošle stopovací podmínku, aby naznačil, že skončil. Poté se jiné zařízení může stát řadičem a posílat nebo přijímat data.
+
+I2C má omezení rychlosti, s 3 různými režimy běžícími na pevně stanovených rychlostech. Nejrychlejší je režim vysoké rychlosti s maximální rychlostí 3,4 Mbps (megabitů za sekundu), i když jen velmi málo zařízení tuto rychlost podporuje. Například Raspberry Pi je omezeno na rychlý režim s rychlostí 400 Kbps (kilobitů za sekundu). Standardní režim běží na 100 Kbps.
+
+> 💁 Pokud používáte Raspberry Pi s Grove Base hat jako své IoT zařízení, na desce uvidíte několik I2C konektorů, které můžete použít ke komunikaci s I2C senzory. Analogové Grove senzory také používají I2C s ADC k odesílání analogových hodnot jako digitálních dat, takže světelný senzor, který jste použili, simuloval analogový pin, přičemž hodnota byla odeslána přes I2C, protože Raspberry Pi podporuje pouze digitální piny.
+
+### Univerzální asynchronní přijímač-vysílač (UART)
+
+UART zahrnuje fyzické obvody, které umožňují komunikaci mezi dvěma zařízeními. Každé zařízení má 2 komunikační piny - vysílací (Tx) a přijímací (Rx), přičemž Tx pin prvního zařízení je připojen k Rx pinu druhého zařízení a Tx pin druhého zařízení je připojen k Rx pinu prvního zařízení. To umožňuje přenos dat v obou směrech.
+
+* Zařízení 1 vysílá data ze svého Tx pinu, která jsou přijímána zařízením 2 na jeho Rx pinu
+* Zařízení 1 přijímá data na svém Rx pinu, která jsou vysílána zařízením 2 z jeho Tx pinu
+
+
+
+> 🎓 Data jsou odesílána po jednom bitu, což se nazývá *sériová* komunikace. Většina operačních systémů a mikrokontrolérů má *sériové porty*, tedy připojení, která mohou odesílat a přijímat sériová data a jsou dostupná vašemu kódu.
+
+UART zařízení mají [baudovou rychlost](https://wikipedia.org/wiki/Symbol_rate) (také známou jako symbolová rychlost), což je rychlost, jakou budou data odesílána a přijímána v bitech za sekundu. Běžná baudová rychlost je 9 600, což znamená, že každou sekundu je odesláno 9 600 bitů (0 a 1) dat.
+
+UART používá startovací a koncové bity - to znamená, že odesílá startovací bit, aby naznačil, že se chystá odeslat bajt (8 bitů) dat, a poté koncový bit po odeslání 8 bitů.
+
+Rychlost UART závisí na hardwaru, ale ani nejrychlejší implementace nepřekračují 6,5 Mbps (megabitů za sekundu, nebo milionů bitů, 0 nebo 1, odeslaných za sekundu).
+
+UART můžete použít přes GPIO piny - můžete nastavit jeden pin jako Tx a druhý jako Rx, a poté je připojit k jinému zařízení.
+
+> 💁 Pokud používáte Raspberry Pi s Grove Base hat jako své IoT zařízení, na desce uvidíte UART konektor, který můžete použít ke komunikaci se senzory využívajícími protokol UART.
+
+### Sériové periferní rozhraní (SPI)
+
+SPI je navrženo pro komunikaci na krátké vzdálenosti, například na mikrokontroléru pro komunikaci s úložným zařízením, jako je flash paměť. Je založeno na modelu řadič/periferie s jedním řadičem (obvykle procesorem IoT zařízení), který komunikuje s více periferiemi. Řadič vše ovládá výběrem periferie a odesíláním nebo požadováním dat.
+
+> 💁 Stejně jako I2C jsou termíny řadič a periferie nedávné změny, takže můžete stále narazit na starší termíny.
+
+Řadiče SPI používají 3 vodiče spolu s 1 extra vodičem na periferii. Periferie používají 4 vodiče. Tyto vodiče jsou:
+
+| Vodič | Název | Popis |
+| ---- | --------- | ----------- |
+| COPI | Výstup řadiče, vstup periferie | Tento vodič slouží k odesílání dat z řadiče do periferie. |
+| CIPO | Vstup řadiče, výstup periferie | Tento vodič slouží k odesílání dat z periferie do řadiče. |
+| SCLK | Sériový hodinový signál | Tento vodič odesílá hodinový signál rychlostí nastavenou řadičem. |
+| CS | Výběr čipu | Řadič má více vodičů, jeden na periferii, a každý vodič se připojuje k vodiči CS na odpovídající periferii. |
+
+
+
+Vodič CS se používá k aktivaci jedné periferie najednou, komunikaci přes vodiče COPI a CIPO. Když řadič potřebuje změnit periferii, deaktivuje vodič CS připojený k aktuálně aktivní periferii a poté aktivuje vodič připojený k periferii, se kterou chce komunikovat dál.
+
+SPI je *plně duplexní*, což znamená, že řadič může současně odesílat a přijímat data ze stejné periferie pomocí vodičů COPI a CIPO. SPI používá hodinový signál na vodiči SCLK k synchronizaci zařízení, takže na rozdíl od přímého odesílání přes UART nepotřebuje startovací a koncové bity.
+
+Pro SPI nejsou definovány žádné rychlostní limity, přičemž implementace často dokážou přenášet několik megabajtů dat za sekundu.
+
+IoT vývojové sady často podporují SPI přes některé GPIO piny. Například na Raspberry Pi můžete použít GPIO piny 19, 21, 23, 24 a 26 pro SPI.
+
+### Bezdrátové připojení
+
+Některé senzory mohou komunikovat přes standardní bezdrátové protokoly, jako je Bluetooth (hlavně Bluetooth Low Energy, nebo BLE), LoRaWAN (protokol **Lo**ng **Ra**nge s nízkou spotřebou energie) nebo WiFi. Tyto protokoly umožňují vzdáleným senzorům, které nejsou fyzicky připojeny k IoT zařízení, komunikovat.
+
+Jedním z příkladů jsou komerční senzory vlhkosti půdy. Ty měří vlhkost půdy na poli a poté odesílají data přes LoRaWAN do centrálního zařízení, které data zpracuje nebo odešle přes internet. To umožňuje senzoru být vzdálený od IoT zařízení, které spravuje data, čímž se snižuje spotřeba energie a potřeba velkých WiFi sítí nebo dlouhých kabelů.
+
+BLE je populární pro pokročilé senzory, jako jsou fitness trackery, které fungují na zápěstí. Tyto trackery kombinují více senzorů a odesílají data ze senzorů do IoT zařízení, například vašeho telefonu, přes BLE.
+
+✅ Máte na sobě, ve svém domě nebo ve škole nějaké Bluetooth senzory? Mohou to být například teplotní senzory, senzory obsazenosti, sledovače zařízení nebo fitness zařízení.
+
+Jedním z populárních způsobů připojení komerčních zařízení je Zigbee. Zigbee používá WiFi k vytvoření síťových struktur mezi zařízeními, kde každé zařízení se připojuje k co největšímu počtu blízkých zařízení, čímž vytváří velké množství spojení jako pavučina. Když jedno zařízení chce odeslat zprávu na internet, může ji odeslat nejbližším zařízením, která ji poté přeposílají dalším blízkým zařízením a tak dále, dokud nedosáhne koordinátora a může být odeslána na internet.
+
+> 🐝 Název Zigbee odkazuje na taneček včel po návratu do úlu.
+
+## Měření úrovně vlhkosti půdy
+
+Úroveň vlhkosti půdy můžete měřit pomocí senzoru vlhkosti půdy, IoT zařízení a pokojové rostliny nebo blízkého záhonu půdy.
+
+### Úkol - měření vlhkosti půdy
+
+Projděte si příslušný návod k měření vlhkosti půdy pomocí vašeho IoT zařízení:
+
+* [Arduino - Wio Terminal](wio-terminal-soil-moisture.md)
+* [Jednodeskový počítač - Raspberry Pi](pi-soil-moisture.md)
+* [Jednodeskový počítač - Virtuální zařízení](virtual-device-soil-moisture.md)
+
+## Kalibrace senzoru
+
+Senzory se spoléhají na měření elektrických vlastností, jako je odpor nebo kapacita.
+
+> 🎓 Odpor, měřený v ohmech (Ω), je míra odporu vůči elektrickému proudu, který prochází materiálem. Když je na materiál aplikováno napětí, množství proudu, který jím prochází, závisí na odporu materiálu. Více si můžete přečíst na [stránce o elektrickém odporu na Wikipedii](https://wikipedia.org/wiki/Electrical_resistance_and_conductance).
+
+> 🎓 Kapacita, měřená ve faradech (F), je schopnost komponenty nebo obvodu shromažďovat a ukládat elektrickou energii. Více si můžete přečíst na [stránce o kapacitě na Wikipedii](https://wikipedia.org/wiki/Capacitance).
+
+Tato měření nejsou vždy užitečná - představte si teplotní senzor, který vám poskytne měření 22,5 kΩ! Místo toho je nutné naměřenou hodnotu převést na užitečnou jednotku kalibrací - tedy přiřazením naměřených hodnot k měřené veličině, aby bylo možné nové měření převést na správnou jednotku.
+
+Některé senzory jsou již předkalibrované. Například teplotní senzor, který jste použili v předchozí lekci, byl již kalibrován tak, aby mohl vracet měření teploty ve °C. V továrně by první vyrobený senzor byl vystaven řadě známých teplot a měřen odpor. To by pak bylo použito k vytvoření výpočtu, který může převádět z naměřené hodnoty v Ω (jednotka odporu) na °C.
+
+> 💁 Vzorec pro výpočet odporu z teploty se nazývá [Steinhart–Hartova rovnice](https://wikipedia.org/wiki/Steinhart–Hart_equation).
+
+### Kalibrace senzoru vlhkosti půdy
+
+Vlhkost půdy se měří pomocí gravimetrického nebo objemového obsahu vody.
+
+* Gravimetrický je hmotnost vody v jednotkové hmotnosti půdy, měřená jako počet kilogramů vody na kilogram suché půdy
+* Objemový je objem vody v jednotkovém objemu půdy, měřený jako počet kubických metrů vody na kubické metry suché půdy
+
+> 🇺🇸 Pro Američany, díky konzistenci jednotek, lze tyto hodnoty měřit v librách místo kilogramů nebo v kubických stopách místo kubických metrů.
+
+Senzory vlhkosti půdy měří elektrický odpor nebo kapacitu - to se mění nejen podle vlhkosti půdy, ale také podle typu půdy, protože složky v půdě mohou měnit její elektrické vlastnosti. Ideálně by měly být senzory kalibrovány - tedy odebráním hodnot ze senzoru a jejich porovnáním s měřeními získanými vědeckým přístupem. Například laboratoř může vypočítat gravimetrickou vlhkost půdy pomocí vzorků konkrétního pole odebraných několikrát ročně a tyto hodnoty použít ke kalibraci senzoru, přiřazením hodnoty senzoru k gravimetrické vlhkosti půdy.
+
+
+
+Výše uvedený graf ukazuje, jak kalibrovat senzor. Napětí je zachyceno pro vzorek půdy, který je poté měřen v laboratoři porovnáním vlhkého hmotnosti se suchou hmotností (měřením hmotnosti vlhké, poté sušením v troubě a měřením suché). Jakmile je odebráno několik hodnot, mohou být vykresleny na grafu a na body může být přizpůsobena čára. Tato čára pak může být použita k převodu hodnot senzoru vlhkosti půdy odebraných IoT zařízením na skutečná měření vlhkosti půdy.
+
+💁 U odporových senzorů vlhkosti půdy napětí roste s rostoucí vlhkostí půdy. U kapacitních senzorů vlhkosti půdy napětí klesá s rostoucí vlhkostí půdy, takže grafy pro tyto senzory by klesaly, nikoli stoupaly.
+
+
+
+Výše uvedený graf ukazuje hodnotu napětí ze senzoru vlhkosti půdy, a sledováním této hodnoty k čáře na grafu lze vypočítat skutečnou vlhkost půdy.
+
+Tento přístup znamená, že farmář potřebuje získat jen několik laboratorních měření pro pole, poté může použít IoT zařízení k měření vlhkosti půdy - což výrazně urychluje čas potřebný k měření.
+
+---
+
+## 🚀 Výzva
+
+Odporové a kapacitní senzory vlhkosti půdy mají řadu rozdílů. Jaké jsou tyto rozdíly a který typ (pokud vůbec) je nejlepší pro farmáře? Mění se tato odpověď mezi rozvojovými a rozvinutými zeměmi?
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/12)
+
+## Přehled a samostudium
+
+Přečtěte si o hardwaru a protokolech používaných senzory a aktuátory:
+
+* [GPIO stránka na Wikipedii](https://wikipedia.org/wiki/General-purpose_input/output)
+* [UART stránka na Wikipedii](https://wikipedia.org/wiki/Universal_asynchronous_receiver-transmitter)
+* [SPI stránka na Wikipedii](https://wikipedia.org/wiki/Serial_Peripheral_Interface)
+* [I2C stránka na Wikipedii](https://wikipedia.org/wiki/I²C)
+* [Zigbee stránka na Wikipedii](https://wikipedia.org/wiki/Zigbee)
+
+## Zadání
+
+[Kalibrujte svůj senzor](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/2-detect-soil-moisture/assignment.md b/translations/cs/2-farm/lessons/2-detect-soil-moisture/assignment.md
new file mode 100644
index 00000000..cfa06753
--- /dev/null
+++ b/translations/cs/2-farm/lessons/2-detect-soil-moisture/assignment.md
@@ -0,0 +1,63 @@
+
+# Kalibrace vašeho senzoru
+
+## Pokyny
+
+V této lekci jste získali hodnoty z čidla vlhkosti půdy, měřené jako hodnoty od 0 do 1023. Abyste je mohli převést na skutečné hodnoty vlhkosti půdy, je potřeba senzor kalibrovat. To můžete udělat tak, že odeberete vzorky půdy, provedete měření a vypočítáte gravimetrický obsah vlhkosti půdy z těchto vzorků.
+
+Tyto kroky budete muset opakovat několikrát, pokaždé s různou vlhkostí půdy, abyste získali potřebná měření.
+
+1. Proveďte měření vlhkosti půdy pomocí senzoru vlhkosti půdy. Zapište si tuto hodnotu.
+
+1. Odeberte vzorek půdy a zvažte jej. Zapište si tuto hmotnost.
+
+1. Vysušte půdu – nejlepším způsobem je teplá trouba na 110 °C (230 °F) po několik hodin. Můžete ji také sušit na slunci nebo ji umístit na teplé, suché místo, dokud nebude půda zcela suchá. Měla by být práškovitá a sypká.
+
+ > 💁 V laboratoři pro co nejpřesnější výsledky byste půdu sušili v troubě 48–72 hodin. Pokud máte ve škole sušicí trouby, zjistěte, zda je můžete použít k delšímu sušení. Čím déle, tím sušší vzorek a tím přesnější výsledky.
+
+1. Zvažte půdu znovu.
+
+ > 🔥 Pokud jste ji sušili v troubě, ujistěte se, že nejprve vychladla!
+
+Gravimetrická vlhkost půdy se vypočítá jako:
+
+
+
+* W
+- hmotnost mokré půdy
+* W
+- hmotnost suché půdy
+
+Například, máte vzorek půdy, který váží 212 g mokrý a 197 g suchý.
+
+
+
+* W = 212 g
+* W = 197 g
+* 212 - 197 = 15
+* 15 / 197 = 0,076
+* 0,076 * 100 = 7,6 %
+
+V tomto příkladu má půda gravimetrickou vlhkost 7,6 %.
+
+Jakmile budete mít hodnoty alespoň pro 3 vzorky, vytvořte graf vlhkosti půdy % vůči hodnotám senzoru vlhkosti půdy a přidejte čáru, která nejlépe odpovídá bodům. Poté můžete použít tento graf k výpočtu gravimetrického obsahu vlhkosti půdy pro danou hodnotu senzoru tím, že přečtete hodnotu z čáry.
+
+## Hodnocení
+
+| Kritéria | Vynikající | Přiměřené | Potřebuje zlepšení |
+| -------- | ---------- | --------- | ------------------ |
+| Shromáždění kalibračních dat | Získání alespoň 3 kalibračních vzorků | Získání alespoň 2 kalibračních vzorků | Získání alespoň 1 kalibračního vzorku |
+| Provedení kalibrovaného měření | Úspěšné vytvoření kalibračního grafu, provedení měření senzorem a převod na gravimetrický obsah vlhkosti půdy | Úspěšné vytvoření kalibračního grafu | Neschopnost vytvořit graf |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/2-detect-soil-moisture/pi-soil-moisture.md b/translations/cs/2-farm/lessons/2-detect-soil-moisture/pi-soil-moisture.md
new file mode 100644
index 00000000..a1f920ae
--- /dev/null
+++ b/translations/cs/2-farm/lessons/2-detect-soil-moisture/pi-soil-moisture.md
@@ -0,0 +1,108 @@
+
+# Měření vlhkosti půdy - Raspberry Pi
+
+V této části lekce přidáte kapacitní senzor vlhkosti půdy k Raspberry Pi a budete z něj číst hodnoty.
+
+## Hardware
+
+Raspberry Pi potřebuje kapacitní senzor vlhkosti půdy.
+
+Senzor, který budete používat, je [Kapacitní senzor vlhkosti půdy](https://www.seeedstudio.com/Grove-Capacitive-Moisture-Sensor-Corrosion-Resistant.html), který měří vlhkost půdy detekcí kapacity půdy, což je vlastnost, která se mění s vlhkostí půdy. Jak se vlhkost půdy zvyšuje, napětí klesá.
+
+Jedná se o analogový senzor, který používá analogový pin a 10bitový ADC v Grove Base Hat na Raspberry Pi k převodu napětí na digitální signál v rozsahu 1-1 023. Tento signál je poté odeslán přes I2C pomocí GPIO pinů na Raspberry Pi.
+
+### Připojení senzoru vlhkosti půdy
+
+Senzor vlhkosti půdy Grove lze připojit k Raspberry Pi.
+
+#### Úkol - připojení senzoru vlhkosti půdy
+
+Připojte senzor vlhkosti půdy.
+
+
+
+1. Zasuňte jeden konec kabelu Grove do konektoru na senzoru vlhkosti půdy. Kabel lze zasunout pouze jedním směrem.
+
+1. S vypnutým Raspberry Pi připojte druhý konec kabelu Grove do analogového konektoru označeného **A0** na Grove Base Hat připojeném k Raspberry Pi. Tento konektor je druhý zprava v řadě konektorů vedle GPIO pinů.
+
+
+
+1. Zasuňte senzor vlhkosti půdy do půdy. Senzor má "nejvyšší poziční čáru" - bílou čáru přes senzor. Zasuňte senzor až k této čáře, ale ne dál.
+
+
+
+## Programování senzoru vlhkosti půdy
+
+Raspberry Pi nyní může být naprogramováno pro použití připojeného senzoru vlhkosti půdy.
+
+### Úkol - programování senzoru vlhkosti půdy
+
+Naprogramujte zařízení.
+
+1. Zapněte Raspberry Pi a počkejte, až se spustí.
+
+1. Spusťte VS Code, buď přímo na Raspberry Pi, nebo se připojte pomocí rozšíření Remote SSH.
+
+ > ⚠️ Můžete se podívat na [instrukce pro nastavení a spuštění VS Code v nightlight - lekce 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/pi.md).
+
+1. Z terminálu vytvořte novou složku v domovském adresáři uživatele `pi` s názvem `soil-moisture-sensor`. V této složce vytvořte soubor s názvem `app.py`.
+
+1. Otevřete tuto složku ve VS Code.
+
+1. Přidejte následující kód do souboru `app.py` pro import potřebných knihoven:
+
+ ```python
+ import time
+ from grove.adc import ADC
+ ```
+
+ Příkaz `import time` importuje modul `time`, který bude použit později v tomto úkolu.
+
+ Příkaz `from grove.adc import ADC` importuje `ADC` z knihoven Grove Python. Tato knihovna obsahuje kód pro interakci s analogově-digitálním převodníkem na Pi Base Hat a čtení napětí z analogových senzorů.
+
+1. Přidejte následující kód pod tento pro vytvoření instance třídy `ADC`:
+
+ ```python
+ adc = ADC()
+ ```
+
+1. Přidejte nekonečnou smyčku, která čte z tohoto ADC na pinu A0 a zapisuje výsledek do konzole. Tato smyčka může poté mezi čteními spát po dobu 10 sekund.
+
+ ```python
+ while True:
+ soil_moisture = adc.read(0)
+ print("Soil moisture:", soil_moisture)
+
+ time.sleep(10)
+ ```
+
+1. Spusťte Python aplikaci. Uvidíte měření vlhkosti půdy zapsaná do konzole. Přidejte vodu do půdy nebo vyjměte senzor z půdy a sledujte, jak se hodnota mění.
+
+ ```output
+ pi@raspberrypi:~/soil-moisture-sensor $ python3 app.py
+ Soil moisture: 615
+ Soil moisture: 612
+ Soil moisture: 498
+ Soil moisture: 493
+ Soil moisture: 490
+ Soil Moisture: 388
+ ```
+
+ V příkladu výstupu výše můžete vidět, jak napětí klesá, když se přidá voda.
+
+> 💁 Tento kód najdete ve složce [code/pi](../../../../../2-farm/lessons/2-detect-soil-moisture/code/pi).
+
+😀 Program senzoru vlhkosti půdy byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro kritické informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/2-detect-soil-moisture/virtual-device-soil-moisture.md b/translations/cs/2-farm/lessons/2-detect-soil-moisture/virtual-device-soil-moisture.md
new file mode 100644
index 00000000..34bc4f81
--- /dev/null
+++ b/translations/cs/2-farm/lessons/2-detect-soil-moisture/virtual-device-soil-moisture.md
@@ -0,0 +1,123 @@
+
+# Měření vlhkosti půdy - Virtuální IoT hardware
+
+V této části lekce přidáte kapacitní senzor vlhkosti půdy k vašemu virtuálnímu IoT zařízení a budete z něj číst hodnoty.
+
+## Virtuální hardware
+
+Virtuální IoT zařízení bude používat simulovaný kapacitní senzor vlhkosti půdy Grove. Tento přístup udržuje tento lab stejný jako při použití Raspberry Pi s fyzickým kapacitním senzorem vlhkosti půdy Grove.
+
+U fyzického IoT zařízení by senzor vlhkosti půdy byl kapacitní senzor, který měří vlhkost půdy detekcí kapacity půdy, což je vlastnost, která se mění s vlhkostí půdy. Jak vlhkost půdy roste, napětí klesá.
+
+Jedná se o analogový senzor, který používá simulovaný 10bitový ADC k reportování hodnoty v rozmezí 1–1 023.
+
+### Přidání senzoru vlhkosti půdy do CounterFit
+
+Pro použití virtuálního senzoru vlhkosti půdy je třeba jej přidat do aplikace CounterFit.
+
+#### Úkol - Přidání senzoru vlhkosti půdy do CounterFit
+
+Přidejte senzor vlhkosti půdy do aplikace CounterFit.
+
+1. Vytvořte novou Python aplikaci na svém počítači ve složce `soil-moisture-sensor` s jediným souborem `app.py` a Python virtuálním prostředím, a přidejte CounterFit pip balíčky.
+
+ > ⚠️ Můžete se odkázat na [instrukce pro vytvoření a nastavení CounterFit Python projektu v lekci 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/virtual-device.md).
+
+1. Ujistěte se, že webová aplikace CounterFit běží.
+
+1. Vytvořte senzor vlhkosti půdy:
+
+ 1. V poli *Create sensor* v panelu *Sensors* rozbalte pole *Sensor type* a vyberte *Soil Moisture*.
+
+ 1. Nechte *Units* nastavené na *NoUnits*.
+
+ 1. Ujistěte se, že *Pin* je nastaven na *0*.
+
+ 1. Klikněte na tlačítko **Add** pro vytvoření senzoru *Soil Moisture* na pinu 0.
+
+ 
+
+ Senzor vlhkosti půdy bude vytvořen a objeví se v seznamu senzorů.
+
+ 
+
+## Naprogramování aplikace senzoru vlhkosti půdy
+
+Aplikace senzoru vlhkosti půdy nyní může být naprogramována pomocí senzorů CounterFit.
+
+### Úkol - Naprogramování aplikace senzoru vlhkosti půdy
+
+Naprogramujte aplikaci senzoru vlhkosti půdy.
+
+1. Ujistěte se, že aplikace `soil-moisture-sensor` je otevřená ve VS Code.
+
+1. Otevřete soubor `app.py`.
+
+1. Přidejte následující kód na začátek souboru `app.py` pro připojení aplikace k CounterFit:
+
+ ```python
+ from counterfit_connection import CounterFitConnection
+ CounterFitConnection.init('127.0.0.1', 5000)
+ ```
+
+1. Přidejte následující kód do souboru `app.py` pro import potřebných knihoven:
+
+ ```python
+ import time
+ from counterfit_shims_grove.adc import ADC
+ ```
+
+ Příkaz `import time` importuje modul `time`, který bude použit později v tomto úkolu.
+
+ Příkaz `from counterfit_shims_grove.adc import ADC` importuje třídu `ADC` pro interakci se simulovaným analogově-digitálním převodníkem, který se může připojit k senzoru CounterFit.
+
+1. Přidejte následující kód pod tento blok pro vytvoření instance třídy `ADC`:
+
+ ```python
+ adc = ADC()
+ ```
+
+1. Přidejte nekonečnou smyčku, která čte hodnoty z ADC na pinu 0 a zapisuje výsledek do konzole. Tato smyčka pak může mezi čteními spát po dobu 10 sekund.
+
+ ```python
+ while True:
+ soil_moisture = adc.read(0)
+ print("Soil moisture:", soil_moisture)
+
+ time.sleep(10)
+ ```
+
+1. V aplikaci CounterFit změňte hodnotu senzoru vlhkosti půdy, kterou bude aplikace číst. Můžete to udělat jedním ze dvou způsobů:
+
+ * Zadejte číslo do pole *Value* senzoru vlhkosti půdy a poté klikněte na tlačítko **Set**. Číslo, které zadáte, bude hodnota vrácená senzorem.
+
+ * Zaškrtněte políčko *Random* a zadejte hodnoty *Min* a *Max*, poté klikněte na tlačítko **Set**. Při každém čtení hodnoty senzoru se přečte náhodné číslo mezi *Min* a *Max*.
+
+1. Spusťte Python aplikaci. Uvidíte měření vlhkosti půdy zapsaná do konzole. Změňte hodnotu *Value* nebo nastavení *Random*, abyste viděli změnu hodnoty.
+
+ ```output
+ (.venv) ➜ soil-moisture-sensor $ python app.py
+ Soil moisture: 615
+ Soil moisture: 612
+ Soil moisture: 498
+ Soil moisture: 493
+ Soil moisture: 490
+ Soil Moisture: 388
+ ```
+
+> 💁 Tento kód najdete ve složce [code/virtual-device](../../../../../2-farm/lessons/2-detect-soil-moisture/code/virtual-device).
+
+😀 Program senzoru vlhkosti půdy byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/2-detect-soil-moisture/wio-terminal-soil-moisture.md b/translations/cs/2-farm/lessons/2-detect-soil-moisture/wio-terminal-soil-moisture.md
new file mode 100644
index 00000000..e274a621
--- /dev/null
+++ b/translations/cs/2-farm/lessons/2-detect-soil-moisture/wio-terminal-soil-moisture.md
@@ -0,0 +1,117 @@
+
+# Měření vlhkosti půdy - Wio Terminal
+
+V této části lekce přidáte kapacitní senzor vlhkosti půdy k vašemu Wio Terminalu a budete z něj číst hodnoty.
+
+## Hardware
+
+Wio Terminal potřebuje kapacitní senzor vlhkosti půdy.
+
+Senzor, který budete používat, je [Kapacitní senzor vlhkosti půdy](https://www.seeedstudio.com/Grove-Capacitive-Moisture-Sensor-Corrosion-Resistant.html), který měří vlhkost půdy detekcí kapacity půdy, vlastnosti, která se mění s vlhkostí půdy. Jak se vlhkost půdy zvyšuje, napětí klesá.
+
+Jedná se o analogový senzor, který se připojuje k analogovým pinům na Wio Terminalu, přičemž využívá vestavěný ADC k vytvoření hodnoty od 0 do 1 023.
+
+### Připojení senzoru vlhkosti půdy
+
+Grove senzor vlhkosti půdy lze připojit k konfigurovatelnému analogovému/digitálnímu portu Wio Terminalu.
+
+#### Úkol - připojte senzor vlhkosti půdy
+
+Připojte senzor vlhkosti půdy.
+
+
+
+1. Zasuňte jeden konec Grove kabelu do konektoru na senzoru vlhkosti půdy. Kabel lze zasunout pouze jedním způsobem.
+
+1. S odpojeným Wio Terminalem od počítače nebo jiného zdroje napájení připojte druhý konec Grove kabelu do pravého Grove konektoru na Wio Terminalu, když se díváte na obrazovku. Jedná se o konektor nejdále od tlačítka napájení.
+
+
+
+1. Zasuňte senzor vlhkosti půdy do půdy. Senzor má „nejvyšší poziční čáru“ – bílou čáru přes senzor. Zasuňte senzor až k této čáře, ale ne dál.
+
+
+
+1. Nyní můžete připojit Wio Terminal k vašemu počítači.
+
+## Naprogramování senzoru vlhkosti půdy
+
+Wio Terminal nyní může být naprogramován pro použití připojeného senzoru vlhkosti půdy.
+
+### Úkol - naprogramujte senzor vlhkosti půdy
+
+Naprogramujte zařízení.
+
+1. Vytvořte zcela nový projekt pro Wio Terminal pomocí PlatformIO. Nazvěte tento projekt `soil-moisture-sensor`. Přidejte kód do funkce `setup` pro konfiguraci sériového portu.
+
+ > ⚠️ Můžete se podívat na [instrukce pro vytvoření projektu PlatformIO v projektu 1, lekci 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#create-a-platformio-project).
+
+1. Pro tento senzor neexistuje knihovna, místo toho můžete číst z analogového pinu pomocí vestavěné funkce Arduino [`analogRead`](https://www.arduino.cc/reference/en/language/functions/analog-io/analogread/). Začněte konfigurací analogového pinu pro vstup, aby bylo možné z něj číst hodnoty, přidáním následujícího do funkce `setup`.
+
+ ```cpp
+ pinMode(A0, INPUT);
+ ```
+
+ Tím nastavíte pin `A0`, kombinovaný analogový/digitální pin, jako vstupní pin, ze kterého lze číst napětí.
+
+1. Přidejte následující do funkce `loop` pro čtení napětí z tohoto pinu:
+
+ ```cpp
+ int soil_moisture = analogRead(A0);
+ ```
+
+1. Pod tento kód přidejte následující kód pro tisk hodnoty na sériový port:
+
+ ```cpp
+ Serial.print("Soil Moisture: ");
+ Serial.println(soil_moisture);
+ ```
+
+1. Nakonec přidejte na konec zpoždění 10 sekund:
+
+ ```cpp
+ delay(10000);
+ ```
+
+1. Sestavte a nahrajte kód do Wio Terminalu.
+
+ > ⚠️ Můžete se podívat na [instrukce pro vytvoření projektu PlatformIO v projektu 1, lekci 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#write-the-hello-world-app).
+
+1. Po nahrání můžete sledovat vlhkost půdy pomocí sériového monitoru. Přidejte trochu vody do půdy nebo vyjměte senzor z půdy a sledujte, jak se hodnota mění.
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ Soil Moisture: 526
+ Soil Moisture: 529
+ Soil Moisture: 521
+ Soil Moisture: 494
+ Soil Moisture: 454
+ Soil Moisture: 456
+ Soil Moisture: 395
+ Soil Moisture: 388
+ Soil Moisture: 394
+ Soil Moisture: 391
+ ```
+
+ V příkladu výstupu výše můžete vidět, jak napětí klesá, když je přidána voda.
+
+> 💁 Tento kód najdete ve složce [code/wio-terminal](../../../../../2-farm/lessons/2-detect-soil-moisture/code/wio-terminal).
+
+😀 Program senzoru vlhkosti půdy byl úspěšný!
+
+---
+
+**Upozornění**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za závazný zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Nezodpovídáme za jakékoli nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/3-automated-plant-watering/README.md b/translations/cs/2-farm/lessons/3-automated-plant-watering/README.md
new file mode 100644
index 00000000..705ac4ae
--- /dev/null
+++ b/translations/cs/2-farm/lessons/3-automated-plant-watering/README.md
@@ -0,0 +1,314 @@
+
+# Automatické zavlažování rostlin
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+Tato lekce byla součástí [IoT pro začátečníky Projekt 2 - série Digitální zemědělství](https://youtube.com/playlist?list=PLmsFUfdnGr3yCutmcVg6eAUEfsGiFXgcx) od [Microsoft Reactor](https://developer.microsoft.com/reactor/?WT.mc_id=academic-17441-jabenn).
+
+[](https://youtu.be/g9FfZwv9R58)
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/13)
+
+## Úvod
+
+V minulé lekci jste se naučili, jak monitorovat vlhkost půdy. V této lekci se naučíte, jak vytvořit základní komponenty automatického zavlažovacího systému, který reaguje na vlhkost půdy. Také se dozvíte o načasování – jak senzory mohou potřebovat čas na reakci na změny a jak aktuátory mohou potřebovat čas na změnu vlastností měřených senzory.
+
+V této lekci se zaměříme na:
+
+* [Ovládání zařízení s vysokým výkonem z IoT zařízení s nízkým výkonem](../../../../../2-farm/lessons/3-automated-plant-watering)
+* [Ovládání relé](../../../../../2-farm/lessons/3-automated-plant-watering)
+* [Ovládání rostliny přes MQTT](../../../../../2-farm/lessons/3-automated-plant-watering)
+* [Načasování senzorů a aktuátorů](../../../../../2-farm/lessons/3-automated-plant-watering)
+* [Přidání načasování do serveru pro ovládání rostlin](../../../../../2-farm/lessons/3-automated-plant-watering)
+
+## Ovládání zařízení s vysokým výkonem z IoT zařízení s nízkým výkonem
+
+IoT zařízení používají nízké napětí. Zatímco to stačí pro senzory a aktuátory s nízkým výkonem, jako jsou LED diody, je to příliš málo na ovládání většího hardwaru, například vodního čerpadla používaného pro zavlažování. I malá čerpadla, která byste mohli použít pro pokojové rostliny, spotřebovávají příliš mnoho proudu pro IoT vývojovou desku a mohly by ji poškodit.
+
+> 🎓 Proud, měřený v ampérech (A), je množství elektřiny, které prochází obvodem. Napětí poskytuje tlak, proud určuje, kolik je tlačeno. Více o proudu si můžete přečíst na [stránce o elektrickém proudu na Wikipedii](https://wikipedia.org/wiki/Electric_current).
+
+Řešením je mít čerpadlo připojené k externímu zdroji napájení a použít aktuátor k zapnutí čerpadla, podobně jako byste zapnuli světlo. K zapnutí vypínače stačí malá množství energie (ve formě energie vašeho těla), což připojí světlo k síťovému napájení běžícímu na 110V/240V.
+
+
+
+> 🎓 [Síťová elektřina](https://wikipedia.org/wiki/Mains_electricity) označuje elektřinu dodávanou do domácností a podniků prostřednictvím národní infrastruktury v mnoha částech světa.
+
+✅ IoT zařízení obvykle poskytují 3,3V nebo 5V, při méně než 1 ampéru (1A) proudu. Porovnejte to se síťovou elektřinou, která je nejčastěji na 230V (120V v Severní Americe a 100V v Japonsku) a může napájet zařízení, která spotřebovávají 30A.
+
+Existuje řada aktuátorů, které to dokážou, včetně mechanických zařízení, která můžete připojit k existujícím vypínačům a napodobit prst, který je zapíná. Nejoblíbenější je relé.
+
+### Relé
+
+Relé je elektromechanický spínač, který převádí elektrický signál na mechanický pohyb, který zapne spínač. Jádrem relé je elektromagnet.
+
+> 🎓 [Elektromagnety](https://wikipedia.org/wiki/Electromagnet) jsou magnety, které vznikají průchodem elektřiny cívkou drátu. Když je elektřina zapnuta, cívka se zmagnetizuje. Když je elektřina vypnuta, cívka ztrácí magnetismus.
+
+
+
+V relé napájí ovládací obvod elektromagnet. Když je elektromagnet zapnutý, přitáhne páku, která pohne spínačem, uzavře pár kontaktů a dokončí výstupní obvod.
+
+
+
+Když je ovládací obvod vypnutý, elektromagnet se vypne, uvolní páku a otevře kontakty, čímž vypne výstupní obvod. Relé jsou digitální aktuátory – vysoký signál relé zapne, nízký signál ho vypne.
+
+Výstupní obvod může být použit k napájení dalšího hardwaru, například zavlažovacího systému. IoT zařízení může relé zapnout, čímž dokončí výstupní obvod napájející zavlažovací systém, a rostliny se zalijí. IoT zařízení může poté relé vypnout, čímž přeruší napájení zavlažovacího systému a zastaví vodu.
+
+
+
+Ve videu výše je relé zapnuto. LED na relé se rozsvítí, aby indikovala, že je zapnuto (některé desky relé mají LED diody, které indikují, zda je relé zapnuto nebo vypnuto), a napájení je posláno do čerpadla, které se zapne a pumpuje vodu do rostliny.
+
+> 💁 Relé může být také použito k přepínání mezi dvěma výstupními obvody místo zapínání a vypínání jednoho. Jak se páka pohybuje, přepíná spínač z dokončení jednoho výstupního obvodu na dokončení jiného výstupního obvodu, obvykle sdílejícího společné napájení nebo společné uzemnění.
+
+✅ Udělejte si průzkum: Existuje několik typů relé, s rozdíly, jako je to, zda ovládací obvod relé zapne nebo vypne, když je napájen, nebo více výstupních obvodů. Zjistěte více o těchto různých typech.
+
+Když se páka pohybuje, obvykle slyšíte, jak se dotkne elektromagnetu s dobře definovaným kliknutím.
+
+> 💁 Relé může být zapojeno tak, že vytvoření spojení vlastně přeruší napájení relé, čímž relé vypne, což pak pošle napájení zpět do relé, aby se znovu zapnulo, a tak dále. To znamená, že relé bude kliknout velmi rychle a vydávat bzučivý zvuk. Takto fungovaly některé z prvních bzučáků používaných v elektrických zvoncích.
+
+### Napájení relé
+
+Elektromagnet nepotřebuje mnoho energie k aktivaci a přitažení páky, může být ovládán pomocí 3,3V nebo 5V výstupu z IoT vývojové desky. Výstupní obvod může přenášet mnohem více energie, v závislosti na relé, včetně síťového napětí nebo dokonce vyšších úrovní výkonu pro průmyslové použití. Tímto způsobem může IoT vývojová deska ovládat zavlažovací systém, od malého čerpadla pro jednu rostlinu až po masivní průmyslový systém pro celé komerční farmy.
+
+
+
+Obrázek výše ukazuje relé Grove. Ovládací obvod se připojuje k IoT zařízení a zapíná nebo vypíná relé pomocí 3,3V nebo 5V. Výstupní obvod má dva terminály, jeden může být napájení nebo uzemnění. Výstupní obvod může zvládnout až 250V při 10A, což je dost pro řadu zařízení napájených ze sítě. Můžete získat relé, která zvládnou ještě vyšší úrovně výkonu.
+
+
+
+Na obrázku výše je čerpadlo napájeno přes relé. Červený drát spojuje +5V terminál USB napájecího zdroje s jedním terminálem výstupního obvodu relé a další červený drát spojuje druhý terminál výstupního obvodu s čerpadlem. Černý drát spojuje čerpadlo s uzemněním USB napájecího zdroje. Když se relé zapne, dokončí obvod, pošle 5V do čerpadla a zapne čerpadlo.
+
+## Ovládání relé
+
+Relé můžete ovládat z vaší IoT vývojové desky.
+
+### Úkol - ovládání relé
+
+Projděte si příslušný návod k ovládání relé pomocí vašeho IoT zařízení:
+
+* [Arduino - Wio Terminal](wio-terminal-relay.md)
+* [Jednodeskový počítač - Raspberry Pi](pi-relay.md)
+* [Jednodeskový počítač - Virtuální zařízení](virtual-device-relay.md)
+
+## Ovládání rostliny přes MQTT
+
+Doposud bylo vaše relé ovládáno přímo IoT zařízením na základě jednoho měření vlhkosti půdy. V komerčním zavlažovacím systému bude řídicí logika centralizovaná, což umožní rozhodování o zavlažování na základě dat z více senzorů a umožní změnu konfigurace na jednom místě. Pro simulaci tohoto procesu můžete ovládat relé přes MQTT.
+
+### Úkol - ovládání relé přes MQTT
+
+1. Přidejte příslušné MQTT knihovny/pip balíčky a kód do vašeho projektu `soil-moisture-sensor`, aby se připojil k MQTT. Pojmenujte ID klienta jako `soilmoisturesensor_client` s předponou vašeho ID.
+
+ > ⚠️ Můžete se odkazovat na [instrukce pro připojení k MQTT v projektu 1, lekce 4, pokud je to potřeba](../../../1-getting-started/lessons/4-connect-internet/README.md#connect-your-iot-device-to-mqtt).
+
+1. Přidejte příslušný kód zařízení pro odesílání telemetrie s nastavením vlhkosti půdy. Pro telemetrickou zprávu pojmenujte vlastnost `soil_moisture`.
+
+ > ⚠️ Můžete se odkazovat na [instrukce pro odesílání telemetrie do MQTT v projektu 1, lekce 4, pokud je to potřeba](../../../1-getting-started/lessons/4-connect-internet/README.md#send-telemetry-from-your-iot-device).
+
+1. Vytvořte místní serverový kód pro odběr telemetrie a odesílání příkazu k ovládání relé ve složce nazvané `soil-moisture-sensor-server`. Pojmenujte vlastnost v příkazové zprávě `relay_on` a nastavte ID klienta jako `soilmoisturesensor_server` s předponou vašeho ID. Zachovejte stejnou strukturu jako serverový kód, který jste napsali pro projekt 1, lekce 4, protože k tomuto kódu budete přidávat později v této lekci.
+
+ > ⚠️ Můžete se odkazovat na [instrukce pro odesílání telemetrie do MQTT](../../../1-getting-started/lessons/4-connect-internet/README.md#write-the-server-code) a [odesílání příkazů přes MQTT](../../../1-getting-started/lessons/4-connect-internet/README.md#send-commands-to-the-mqtt-broker) v projektu 1, lekce 4, pokud je to potřeba.
+
+1. Přidejte příslušný kód zařízení pro ovládání relé z přijatých příkazů, pomocí vlastnosti `relay_on` ze zprávy. Odesílejte hodnotu true pro `relay_on`, pokud je `soil_moisture` větší než 450, jinak odesílejte false, stejně jako logiku, kterou jste přidali pro IoT zařízení dříve.
+
+ > ⚠️ Můžete se odkazovat na [instrukce pro reakci na příkazy z MQTT v projektu 1, lekce 4, pokud je to potřeba](../../../1-getting-started/lessons/4-connect-internet/README.md#handle-commands-on-the-iot-device).
+
+> 💁 Tento kód najdete ve složce [code-mqtt](../../../../../2-farm/lessons/3-automated-plant-watering/code-mqtt).
+
+Ujistěte se, že kód běží na vašem zařízení a místním serveru, a otestujte ho změnou úrovní vlhkosti půdy, buď změnou hodnot odesílaných virtuálním senzorem, nebo změnou úrovní vlhkosti půdy přidáním vody nebo odstraněním senzoru z půdy.
+
+## Načasování senzorů a aktuátorů
+
+V lekci 3 jste vytvořili noční světlo – LED, která se rozsvítí, jakmile senzor světla detekuje nízkou úroveň světla. Senzor světla detekoval změnu úrovně světla okamžitě a zařízení mohlo rychle reagovat, omezeno pouze délkou zpoždění ve funkci `loop` nebo smyčce `while True:`. Jako IoT vývojář se nemůžete vždy spoléhat na tak rychlou zpětnou vazbu.
+
+### Načasování pro vlhkost půdy
+
+Pokud jste v minulé lekci pracovali s fyzickým senzorem vlhkosti půdy, mohli jste si všimnout, že trvalo několik sekund, než se hodnota vlhkosti půdy snížila poté, co jste zalili rostlinu. To není způsobeno pomalostí senzoru, ale tím, že voda potřebuje čas na prosáknutí půdou.
+💁 Pokud jste zalévali příliš blízko senzoru, mohli jste si všimnout, že hodnota rychle klesla a poté se opět zvýšila – to je způsobeno tím, že voda v blízkosti senzoru se rozšířila do zbytku půdy, což snížilo vlhkost půdy v okolí senzoru.
+
+
+Na diagramu výše je zobrazeno měření vlhkosti půdy s hodnotou 658. Rostlina je zalévána, ale tato hodnota se okamžitě nezmění, protože voda ještě nedosáhla senzoru. Zalévání může dokonce skončit dříve, než voda dosáhne senzoru, a hodnota klesne, aby odrážela novou úroveň vlhkosti.
+
+Pokud byste psali kód pro ovládání zavlažovacího systému pomocí relé na základě úrovní vlhkosti půdy, museli byste vzít tento zpoždění v úvahu a vytvořit chytřejší časování pro vaše IoT zařízení.
+
+✅ Zamyslete se na chvíli, jak byste to mohli udělat.
+
+### Ovládání časování senzoru a aktuátoru
+
+Představte si, že máte za úkol vytvořit zavlažovací systém pro farmu. Na základě typu půdy byla ideální úroveň vlhkosti půdy pro pěstované rostliny stanovena na analogové napětí v rozmezí 400–450.
+
+Mohli byste naprogramovat zařízení podobně jako noční světlo – pokaždé, když senzor naměří hodnotu nad 450, zapne relé, které spustí čerpadlo. Problém je, že voda potřebuje čas, aby se z čerpadla dostala přes půdu k senzoru. Senzor zastaví vodu, když detekuje úroveň 450, ale úroveň vlhkosti bude nadále klesat, protože čerpaná voda stále prosakuje půdou. Výsledkem je plýtvání vodou a riziko poškození kořenů.
+
+✅ Pamatujte – příliš mnoho vody může být pro rostliny stejně špatné jako příliš málo a plýtvá cenným zdrojem.
+
+Lepším řešením je pochopit, že mezi zapnutím aktuátoru a změnou vlastnosti, kterou senzor měří, existuje zpoždění. To znamená, že senzor by měl nejen chvíli počkat, než znovu změří hodnotu, ale aktuátor by měl být vypnutý na určitou dobu před dalším měřením senzoru.
+
+Jak dlouho by mělo být relé zapnuté při každém cyklu? Je lepší být opatrný a zapnout relé jen na krátkou dobu, počkat, až voda prosákne, a poté znovu zkontrolovat úroveň vlhkosti. Koneckonců, můžete vždy znovu zapnout čerpadlo, abyste přidali více vody, ale nemůžete vodu z půdy odebrat.
+
+> 💁 Tento typ časového ovládání je velmi specifický pro IoT zařízení, které stavíte, vlastnost, kterou měříte, a použité senzory a aktuátory.
+
+
+
+Například mám jahodovou rostlinu se senzorem vlhkosti půdy a čerpadlem ovládaným relé. Zjistil jsem, že když přidám vodu, trvá asi 20 sekund, než se měření vlhkosti půdy stabilizuje. To znamená, že musím relé vypnout a počkat 20 sekund, než zkontroluji úroveň vlhkosti. Raději budu mít málo vody než příliš mnoho – čerpadlo mohu vždy znovu zapnout, ale nemohu vodu z rostliny odebrat.
+
+
+
+To znamená, že nejlepší proces by byl zavlažovací cyklus, který vypadá takto:
+
+* Zapnout čerpadlo na 5 sekund
+* Počkat 20 sekund
+* Zkontrolovat vlhkost půdy
+* Pokud je úroveň stále nad požadovanou hodnotou, opakovat výše uvedené kroky
+
+5 sekund může být pro čerpadlo příliš dlouhá doba, zvláště pokud jsou úrovně vlhkosti jen mírně nad požadovanou hodnotou. Nejlepší způsob, jak zjistit, jaké časování použít, je vyzkoušet to, poté upravit na základě dat ze senzoru, s neustálou zpětnou vazbou. To může dokonce vést k jemnějšímu časování, například zapnutí čerpadla na 1 sekundu za každých 100 nad požadovanou úroveň vlhkosti půdy, místo pevně stanovených 5 sekund.
+
+✅ Udělejte si průzkum: Existují další časové faktory, které je třeba zvážit? Může být rostlina zalévána kdykoli, když je vlhkost půdy příliš nízká, nebo existují konkrétní denní doby, které jsou vhodné a nevhodné pro zalévání rostlin?
+
+> 💁 Předpovědi počasí mohou být také zohledněny při ovládání automatizovaných zavlažovacích systémů pro venkovní pěstování. Pokud se očekává déšť, zavlažování může být odloženo až po skončení deště. V té chvíli může být půda dostatečně vlhká, takže není potřeba zalévat, což je mnohem efektivnější než plýtvání vodou těsně před deštěm.
+
+## Přidání časování do serveru pro ovládání rostlin
+
+Kód serveru může být upraven tak, aby přidal kontrolu nad časováním zavlažovacího cyklu a čekáním na změnu úrovní vlhkosti půdy. Logika serveru pro ovládání časování relé je:
+
+1. Přijmout telemetrickou zprávu
+1. Zkontrolovat úroveň vlhkosti půdy
+1. Pokud je v pořádku, nedělat nic. Pokud je hodnota příliš vysoká (což znamená, že vlhkost půdy je příliš nízká), pak:
+ 1. Poslat příkaz k zapnutí relé
+ 1. Počkat 5 sekund
+ 1. Poslat příkaz k vypnutí relé
+ 1. Počkat 20 sekund, než se úroveň vlhkosti půdy stabilizuje
+
+Zavlažovací cyklus, proces od přijetí telemetrické zprávy po připravenost zpracovat úrovně vlhkosti půdy znovu, trvá asi 25 sekund. Posíláme úrovně vlhkosti půdy každých 10 sekund, takže existuje překryv, kdy je zpráva přijata, zatímco server čeká na stabilizaci úrovní vlhkosti půdy, což by mohlo spustit další zavlažovací cyklus.
+
+Existují dvě možnosti, jak tento problém vyřešit:
+
+* Změnit kód IoT zařízení tak, aby posílalo telemetrii pouze každou minutu, tím pádem bude zavlažovací cyklus dokončen před odesláním další zprávy
+* Odhlásit se z telemetrie během zavlažovacího cyklu
+
+První možnost není vždy dobrým řešením pro velké farmy. Farmář může chtít zachytit úrovně vlhkosti půdy během zavlažování pro pozdější analýzu, například aby byl informován o průtoku vody v různých oblastech farmy a mohl lépe cílit zavlažování. Druhá možnost je lepší – kód jednoduše ignoruje telemetrii, když ji nemůže využít, ale telemetrie je stále k dispozici pro jiné služby, které ji mohou odebírat.
+
+> 💁 IoT data nejsou posílána pouze z jednoho zařízení do jedné služby, místo toho mnoho zařízení může posílat data do brokeru a mnoho služeb může data z brokeru poslouchat. Například jedna služba může poslouchat data o vlhkosti půdy a ukládat je do databáze pro analýzu později. Jiná služba může poslouchat stejnou telemetrii pro ovládání zavlažovacího systému.
+
+### Úkol – přidání časování do serveru pro ovládání rostlin
+
+Aktualizujte kód serveru tak, aby relé běželo 5 sekund, poté čekalo 20 sekund.
+
+1. Otevřete složku `soil-moisture-sensor-server` ve VS Code, pokud již není otevřená. Ujistěte se, že je aktivováno virtuální prostředí.
+
+1. Otevřete soubor `app.py`
+
+1. Přidejte následující kód do souboru `app.py` pod stávající importy:
+
+ ```python
+ import threading
+ ```
+
+ Tento příkaz importuje `threading` z knihoven Pythonu, což umožňuje Pythonu vykonávat jiný kód během čekání.
+
+1. Přidejte následující kód před funkci `handle_telemetry`, která zpracovává telemetrické zprávy přijaté serverovým kódem:
+
+ ```python
+ water_time = 5
+ wait_time = 20
+ ```
+
+ Tím se definuje, jak dlouho má relé běžet (`water_time`) a jak dlouho má čekat poté, než zkontroluje vlhkost půdy (`wait_time`).
+
+1. Pod tento kód přidejte následující:
+
+ ```python
+ def send_relay_command(client, state):
+ command = { 'relay_on' : state }
+ print("Sending message:", command)
+ client.publish(server_command_topic, json.dumps(command))
+ ```
+
+ Tento kód definuje funkci nazvanou `send_relay_command`, která posílá příkaz přes MQTT k ovládání relé. Telemetrie je vytvořena jako slovník, poté převedena na JSON řetězec. Hodnota předaná do `state` určuje, zda má být relé zapnuto nebo vypnuto.
+
+1. Po funkci `send_relay_code` přidejte následující kód:
+
+ ```python
+ def control_relay(client):
+ print("Unsubscribing from telemetry")
+ mqtt_client.unsubscribe(client_telemetry_topic)
+
+ send_relay_command(client, True)
+ time.sleep(water_time)
+ send_relay_command(client, False)
+
+ time.sleep(wait_time)
+
+ print("Subscribing to telemetry")
+ mqtt_client.subscribe(client_telemetry_topic)
+ ```
+
+ Tím se definuje funkce pro ovládání relé na základě požadovaného časování. Začíná odhlášením z telemetrie, aby zprávy o vlhkosti půdy nebyly zpracovávány během zavlažování. Poté posílá příkaz k zapnutí relé. Následně čeká po dobu `water_time`, než pošle příkaz k vypnutí relé. Nakonec čeká na stabilizaci úrovní vlhkosti půdy po dobu `wait_time` sekund. Poté se znovu přihlásí k telemetrii.
+
+1. Změňte funkci `handle_telemetry` na následující:
+
+ ```python
+ def handle_telemetry(client, userdata, message):
+ payload = json.loads(message.payload.decode())
+ print("Message received:", payload)
+
+ if payload['soil_moisture'] > 450:
+ threading.Thread(target=control_relay, args=(client,)).start()
+ ```
+
+ Tento kód kontroluje úroveň vlhkosti půdy. Pokud je vyšší než 450, půda potřebuje zalít, takže volá funkci `control_relay`. Tato funkce běží na samostatném vlákně, které běží na pozadí.
+
+1. Ujistěte se, že vaše IoT zařízení běží, poté spusťte tento kód. Změňte úrovně vlhkosti půdy a sledujte, co se děje s relé – mělo by se zapnout na 5 sekund, poté zůstat vypnuté alespoň 20 sekund, zapnout se pouze tehdy, pokud úrovně vlhkosti půdy nejsou dostatečné.
+
+ ```output
+ (.venv) ➜ soil-moisture-sensor-server ✗ python app.py
+ Message received: {'soil_moisture': 457}
+ Unsubscribing from telemetry
+ Sending message: {'relay_on': True}
+ Sending message: {'relay_on': False}
+ Subscribing to telemetry
+ Message received: {'soil_moisture': 302}
+ ```
+
+ Dobrý způsob, jak to otestovat v simulovaném zavlažovacím systému, je použít suchou půdu, poté ručně nalít vodu, zatímco je relé zapnuté, a přestat nalévat, když se relé vypne.
+
+> 💁 Tento kód najdete ve složce [code-timing](../../../../../2-farm/lessons/3-automated-plant-watering/code-timing).
+
+> 💁 Pokud chcete použít čerpadlo k vytvoření skutečného zavlažovacího systému, můžete použít [6V vodní čerpadlo](https://www.seeedstudio.com/6V-Mini-Water-Pump-p-1945.html) s [USB napájecím terminálem](https://www.adafruit.com/product/3628). Ujistěte se, že napájení do nebo z čerpadla je připojeno přes relé.
+
+---
+
+## 🚀 Výzva
+
+Napadá vás nějaké jiné IoT nebo elektrické zařízení, které má podobný problém, kdy trvá nějakou dobu, než výsledky aktuátoru dosáhnou senzoru? Pravděpodobně máte několik takových zařízení doma nebo ve škole.
+
+* Jaké vlastnosti měří?
+* Jak dlouho trvá, než se vlastnost změní po použití aktuátoru?
+* Je v pořádku, pokud se vlastnost změní nad požadovanou hodnotu?
+* Jak ji lze vrátit zpět na požadovanou hodnotu, pokud je to potřeba?
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/14)
+
+## Přehled & Samostudium
+
+* Přečtěte si více o relé, včetně jejich historického využití v telefonních ústřednách, na [stránce Wikipedia o relé](https://wikipedia.org/wiki/Relay).
+
+## Zadání
+
+[Vybudujte efektivnější zavlažovací cyklus](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro kritické informace se doporučuje profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/3-automated-plant-watering/assignment.md b/translations/cs/2-farm/lessons/3-automated-plant-watering/assignment.md
new file mode 100644
index 00000000..60829281
--- /dev/null
+++ b/translations/cs/2-farm/lessons/3-automated-plant-watering/assignment.md
@@ -0,0 +1,54 @@
+
+# Vytvořte efektivnější zavlažovací cyklus
+
+## Pokyny
+
+Tato lekce se zabývala ovládáním relé pomocí dat ze senzorů, přičemž toto relé může ovládat čerpadlo pro zavlažovací systém. Pro definované množství půdy by provoz čerpadla po pevně stanovenou dobu měl mít vždy stejný vliv na vlhkost půdy. To znamená, že si můžete udělat představu o tom, kolik sekund zavlažování odpovídá určitému poklesu hodnoty vlhkosti půdy. Pomocí těchto dat můžete vytvořit lépe kontrolovaný zavlažovací systém.
+
+V tomto úkolu vypočítáte, jak dlouho by mělo čerpadlo běžet, aby se dosáhlo určitého zvýšení vlhkosti půdy.
+
+> ⚠️ Pokud používáte virtuální IoT hardware, můžete tento proces projít, ale simulujte výsledky manuálním zvýšením hodnoty vlhkosti půdy o pevné množství za sekundu, kdy je relé zapnuté.
+
+1. Začněte se suchou půdou. Změřte vlhkost půdy.
+
+1. Přidejte pevné množství vody, buď spuštěním čerpadla na 1 sekundu, nebo nalitím pevného množství vody.
+
+ > Čerpadlo by mělo vždy běžet konstantní rychlostí, takže každou sekundu, kdy čerpadlo běží, by mělo dodat stejné množství vody.
+
+1. Počkejte, až se úroveň vlhkosti půdy stabilizuje, a proveďte měření.
+
+1. Opakujte tento proces několikrát a vytvořte tabulku výsledků. Příklad takové tabulky je uveden níže.
+
+ | Celkový čas čerpadla | Vlhkost půdy | Pokles |
+ | --- | --: | -: |
+ | Suché | 643 | 0 |
+ | 1s | 621 | 22 |
+ | 2s | 601 | 20 |
+ | 3s | 579 | 22 |
+ | 4s | 560 | 19 |
+ | 5s | 539 | 21 |
+ | 6s | 521 | 18 |
+
+1. Vypočítejte průměrné zvýšení vlhkosti půdy za sekundu přidané vody. V uvedeném příkladu každá sekunda vody snižuje hodnotu o průměrně 20,3.
+
+1. Použijte tato data ke zlepšení efektivity serverového kódu, aby čerpadlo běželo po dobu potřebnou k dosažení požadované úrovně vlhkosti půdy.
+
+## Hodnocení
+
+| Kritéria | Vynikající | Přiměřené | Vyžaduje zlepšení |
+| -------- | --------- | -------- | ----------------- |
+| Zaznamenání dat o vlhkosti půdy | Dokáže zaznamenat více měření po přidání pevného množství vody | Dokáže zaznamenat některá měření s pevným množstvím vody | Dokáže zaznamenat pouze jedno nebo dvě měření, nebo není schopen použít pevné množství vody |
+| Kalibrace serverového kódu | Dokáže vypočítat průměrný pokles hodnoty vlhkosti půdy a aktualizovat serverový kód, aby to využil | Dokáže vypočítat průměrný pokles, ale nedokáže aktualizovat serverový kód, nebo není schopen správně vypočítat průměr, ale tuto hodnotu správně použije k aktualizaci serverového kódu | Není schopen vypočítat průměr nebo aktualizovat serverový kód |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/3-automated-plant-watering/pi-relay.md b/translations/cs/2-farm/lessons/3-automated-plant-watering/pi-relay.md
new file mode 100644
index 00000000..1d8c0755
--- /dev/null
+++ b/translations/cs/2-farm/lessons/3-automated-plant-watering/pi-relay.md
@@ -0,0 +1,123 @@
+
+# Ovládání relé - Raspberry Pi
+
+V této části lekce přidáte k Raspberry Pi relé, kromě senzoru vlhkosti půdy, a budete jej ovládat na základě úrovně vlhkosti půdy.
+
+## Hardware
+
+Raspberry Pi potřebuje relé.
+
+Relé, které použijete, je [Grove relé](https://www.seeedstudio.com/Grove-Relay.html), běžně otevřené relé (to znamená, že výstupní obvod je otevřený nebo odpojený, pokud není do relé odeslán signál), které zvládne výstupní obvody až do 250V a 10A.
+
+Jedná se o digitální akční člen, takže se připojuje k digitálnímu pinu na Grove Base Hat.
+
+### Připojení relé
+
+Grove relé lze připojit k Raspberry Pi.
+
+#### Úkol
+
+Připojte relé.
+
+
+
+1. Zasuňte jeden konec Grove kabelu do konektoru na relé. Kabel lze zasunout pouze jedním způsobem.
+
+1. S vypnutým Raspberry Pi připojte druhý konec Grove kabelu do digitálního konektoru označeného **D5** na Grove Base Hat připojeném k Pi. Tento konektor je druhý zleva v řadě konektorů vedle GPIO pinů. Senzor vlhkosti půdy ponechte připojený ke konektoru **A0**.
+
+
+
+1. Zasuňte senzor vlhkosti půdy do půdy, pokud tam již není z předchozí lekce.
+
+## Naprogramování relé
+
+Raspberry Pi nyní může být naprogramováno pro použití připojeného relé.
+
+### Úkol
+
+Naprogramujte zařízení.
+
+1. Zapněte Pi a počkejte, až se spustí.
+
+1. Otevřete projekt `soil-moisture-sensor` z minulé lekce ve VS Code, pokud již není otevřený. Budete do tohoto projektu přidávat.
+
+1. Přidejte následující kód do souboru `app.py` pod stávající importy:
+
+ ```python
+ from grove.grove_relay import GroveRelay
+ ```
+
+ Tento příkaz importuje `GroveRelay` z knihoven Grove Python pro interakci s Grove relé.
+
+1. Přidejte následující kód pod deklaraci třídy `ADC` pro vytvoření instance `GroveRelay`:
+
+ ```python
+ relay = GroveRelay(5)
+ ```
+
+ Tím se vytvoří relé na pinu **D5**, digitálním pinu, ke kterému jste relé připojili.
+
+1. Pro otestování, zda relé funguje, přidejte následující kód do smyčky `while True:`:
+
+ ```python
+ relay.on()
+ time.sleep(.5)
+ relay.off()
+ ```
+
+ Tento kód zapne relé, počká 0,5 sekundy, a poté relé vypne.
+
+1. Spusťte Python aplikaci. Relé se bude zapínat a vypínat každých 10 sekund, s půlsekundovým zpožděním mezi zapnutím a vypnutím. Uslyšíte cvaknutí relé při zapnutí a vypnutí. LED dioda na Grove desce se rozsvítí, když je relé zapnuté, a zhasne, když je vypnuté.
+
+ 
+
+## Ovládání relé na základě vlhkosti půdy
+
+Nyní, když relé funguje, může být ovládáno na základě hodnot vlhkosti půdy.
+
+### Úkol
+
+Ovládejte relé.
+
+1. Smažte 3 řádky kódu, které jste přidali pro testování relé. Nahraďte je následujícím kódem:
+
+ ```python
+ if soil_moisture > 450:
+ print("Soil Moisture is too low, turning relay on.")
+ relay.on()
+ else:
+ print("Soil Moisture is ok, turning relay off.")
+ relay.off()
+ ```
+
+ Tento kód kontroluje úroveň vlhkosti půdy ze senzoru vlhkosti půdy. Pokud je hodnota vyšší než 450, relé se zapne, a vypne se, když hodnota klesne pod 450.
+
+ > 💁 Pamatujte, že kapacitní senzor vlhkosti půdy čte: čím nižší je úroveň vlhkosti půdy, tím více vlhkosti je v půdě, a naopak.
+
+1. Spusťte Python aplikaci. Uvidíte, jak se relé zapíná nebo vypíná v závislosti na úrovni vlhkosti půdy. Vyzkoušejte v suché půdě, poté přidejte vodu.
+
+ ```output
+ Soil Moisture: 638
+ Soil Moisture is too low, turning relay on.
+ Soil Moisture: 452
+ Soil Moisture is too low, turning relay on.
+ Soil Moisture: 347
+ Soil Moisture is ok, turning relay off.
+ ```
+
+> 💁 Tento kód najdete ve složce [code-relay/pi](../../../../../2-farm/lessons/3-automated-plant-watering/code-relay/pi).
+
+😀 Program pro ovládání relé senzorem vlhkosti půdy byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Přestože se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md b/translations/cs/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md
new file mode 100644
index 00000000..5ae1fd36
--- /dev/null
+++ b/translations/cs/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md
@@ -0,0 +1,127 @@
+
+# Ovládání relé - Virtuální IoT zařízení
+
+V této části lekce přidáte k vašemu virtuálnímu IoT zařízení relé, kromě senzoru vlhkosti půdy, a budete ho ovládat na základě úrovně vlhkosti půdy.
+
+## Virtuální hardware
+
+Virtuální IoT zařízení bude používat simulované Grove relé. To udržuje tento lab stejný jako při použití Raspberry Pi s fyzickým Grove relé.
+
+U fyzického IoT zařízení by relé bylo normálně otevřené relé (to znamená, že výstupní obvod je otevřený nebo odpojený, pokud není reléti poslán signál). Takové relé může zvládnout výstupní obvody až do 250V a 10A.
+
+### Přidání relé do CounterFit
+
+Pro použití virtuálního relé je potřeba ho přidat do aplikace CounterFit.
+
+#### Úkol
+
+Přidejte relé do aplikace CounterFit.
+
+1. Otevřete projekt `soil-moisture-sensor` z minulé lekce ve VS Code, pokud již není otevřený. Budete do tohoto projektu přidávat.
+
+1. Ujistěte se, že webová aplikace CounterFit běží.
+
+1. Vytvořte relé:
+
+ 1. V poli *Create actuator* v panelu *Actuators* rozbalte pole *Actuator type* a vyberte *Relay*.
+
+ 1. Nastavte *Pin* na *5*.
+
+ 1. Klikněte na tlačítko **Add**, abyste vytvořili relé na pinu 5.
+
+ 
+
+ Relé bude vytvořeno a objeví se v seznamu aktuátorů.
+
+ 
+
+## Naprogramování relé
+
+Aplikace senzoru vlhkosti půdy nyní může být naprogramována k použití virtuálního relé.
+
+### Úkol
+
+Naprogramujte virtuální zařízení.
+
+1. Otevřete projekt `soil-moisture-sensor` z minulé lekce ve VS Code, pokud již není otevřený. Budete do tohoto projektu přidávat.
+
+1. Přidejte následující kód do souboru `app.py` pod existující importy:
+
+ ```python
+ from counterfit_shims_grove.grove_relay import GroveRelay
+ ```
+
+ Tento příkaz importuje `GroveRelay` z knihoven Grove Python shim pro interakci s virtuálním Grove relé.
+
+1. Přidejte následující kód pod deklaraci třídy `ADC`, abyste vytvořili instanci `GroveRelay`:
+
+ ```python
+ relay = GroveRelay(5)
+ ```
+
+ Tímto vytvoříte relé na pinu **5**, na který jste relé připojili.
+
+1. Pro otestování, že relé funguje, přidejte následující kód do smyčky `while True:`:
+
+ ```python
+ relay.on()
+ time.sleep(.5)
+ relay.off()
+ ```
+
+ Kód zapne relé, počká 0,5 sekundy, a poté relé vypne.
+
+1. Spusťte Python aplikaci. Relé se bude zapínat a vypínat každých 10 sekund, s půlsekundovou prodlevou mezi zapnutím a vypnutím. Uvidíte, jak se virtuální relé v aplikaci CounterFit zavírá a otevírá, když se relé zapíná a vypíná.
+
+ 
+
+## Ovládání relé na základě vlhkosti půdy
+
+Nyní, když relé funguje, může být ovládáno na základě odečtů vlhkosti půdy.
+
+### Úkol
+
+Ovládejte relé.
+
+1. Smažte 3 řádky kódu, které jste přidali pro testování relé. Nahraďte je následujícím kódem:
+
+ ```python
+ if soil_moisture > 450:
+ print("Soil Moisture is too low, turning relay on.")
+ relay.on()
+ else:
+ print("Soil Moisture is ok, turning relay off.")
+ relay.off()
+ ```
+
+ Tento kód kontroluje úroveň vlhkosti půdy ze senzoru vlhkosti půdy. Pokud je nad 450, zapne relé, a pokud klesne pod 450, relé vypne.
+
+ > 💁 Pamatujte, že kapacitní senzor vlhkosti půdy čte: čím nižší je úroveň vlhkosti půdy, tím více vlhkosti je v půdě, a naopak.
+
+1. Spusťte Python aplikaci. Uvidíte, jak se relé zapíná nebo vypíná v závislosti na úrovních vlhkosti půdy. Změňte *Value* nebo *Random* nastavení senzoru vlhkosti půdy, abyste viděli změnu hodnoty.
+
+ ```output
+ Soil Moisture: 638
+ Soil Moisture is too low, turning relay on.
+ Soil Moisture: 452
+ Soil Moisture is too low, turning relay on.
+ Soil Moisture: 347
+ Soil Moisture is ok, turning relay off.
+ ```
+
+> 💁 Tento kód najdete ve složce [code-relay/virtual-device](../../../../../2-farm/lessons/3-automated-plant-watering/code-relay/virtual-device).
+
+😀 Vaše virtuální aplikace senzoru vlhkosti půdy ovládající relé byla úspěšná!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Nenese odpovědnost za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/3-automated-plant-watering/wio-terminal-relay.md b/translations/cs/2-farm/lessons/3-automated-plant-watering/wio-terminal-relay.md
new file mode 100644
index 00000000..3c69b7e4
--- /dev/null
+++ b/translations/cs/2-farm/lessons/3-automated-plant-watering/wio-terminal-relay.md
@@ -0,0 +1,121 @@
+
+# Ovládání relé - Wio Terminal
+
+V této části lekce přidáte k Wio Terminalu relé kromě senzoru vlhkosti půdy a budete jej ovládat na základě úrovně vlhkosti půdy.
+
+## Hardware
+
+Wio Terminal potřebuje relé.
+
+Použité relé je [Grove relé](https://www.seeedstudio.com/Grove-Relay.html), běžně otevřené relé (to znamená, že výstupní obvod je otevřený nebo odpojený, pokud není reléti poslán signál), které zvládne výstupní obvody až do 250V a 10A.
+
+Jedná se o digitální akční člen, takže se připojuje k digitálním pinům na Wio Terminalu. Kombinovaný analogový/digitální port je již používán senzorem vlhkosti půdy, takže toto relé se připojuje do druhého portu, který je kombinovaný I2C a digitální port.
+
+### Připojení relé
+
+Grove relé lze připojit k digitálnímu portu Wio Terminalu.
+
+#### Úkol
+
+Připojte relé.
+
+
+
+1. Zasuňte jeden konec Grove kabelu do zásuvky na relé. Kabel lze zasunout pouze jedním způsobem.
+
+1. S Wio Terminalem odpojeným od počítače nebo jiného zdroje napájení připojte druhý konec Grove kabelu do levé zásuvky Grove na Wio Terminalu, pokud se díváte na obrazovku. Senzor vlhkosti půdy ponechte připojený k pravé zásuvce.
+
+
+
+1. Zasuňte senzor vlhkosti půdy do půdy, pokud tam již není z předchozí lekce.
+
+## Naprogramování relé
+
+Nyní lze Wio Terminal naprogramovat tak, aby používal připojené relé.
+
+### Úkol
+
+Naprogramujte zařízení.
+
+1. Otevřete projekt `soil-moisture-sensor` z minulé lekce ve VS Code, pokud již není otevřený. Budete do něj přidávat další kód.
+
+2. Pro tento akční člen neexistuje knihovna - jedná se o digitální akční člen ovládaný vysokým nebo nízkým signálem. Pro zapnutí pošlete na pin vysoký signál (3,3V), pro vypnutí nízký signál (0V). To lze provést pomocí vestavěné funkce Arduino [`digitalWrite`](https://www.arduino.cc/reference/en/language/functions/digital-io/digitalwrite/). Začněte přidáním následujícího kódu na konec funkce `setup`, abyste nastavili kombinovaný I2C/digitální port jako výstupní pin pro odesílání napětí do relé:
+
+ ```cpp
+ pinMode(PIN_WIRE_SCL, OUTPUT);
+ ```
+
+ `PIN_WIRE_SCL` je číslo portu pro kombinovaný I2C/digitální port.
+
+1. Pro otestování, zda relé funguje, přidejte následující kód do funkce `loop`, pod poslední `delay`:
+
+ ```cpp
+ digitalWrite(PIN_WIRE_SCL, HIGH);
+ delay(500);
+ digitalWrite(PIN_WIRE_SCL, LOW);
+ ```
+
+ Tento kód pošle na pin připojený k relé vysoký signál, čímž relé zapne, počká 500 ms (půl sekundy) a poté pošle nízký signál, čímž relé vypne.
+
+1. Sestavte a nahrajte kód do Wio Terminalu.
+
+1. Po nahrání se relé bude zapínat a vypínat každých 10 sekund, s půlsekundovým zpožděním mezi zapnutím a vypnutím. Uslyšíte cvaknutí relé při zapnutí a vypnutí. LED dioda na desce Grove se rozsvítí, když je relé zapnuté, a zhasne, když je vypnuté.
+
+ 
+
+## Ovládání relé na základě vlhkosti půdy
+
+Nyní, když relé funguje, může být ovládáno na základě hodnot vlhkosti půdy.
+
+### Úkol
+
+Ovládejte relé.
+
+1. Smažte 3 řádky kódu, které jste přidali pro testování relé. Nahraďte je následujícím kódem:
+
+ ```cpp
+ if (soil_moisture > 450)
+ {
+ Serial.println("Soil Moisture is too low, turning relay on.");
+ digitalWrite(PIN_WIRE_SCL, HIGH);
+ }
+ else
+ {
+ Serial.println("Soil Moisture is ok, turning relay off.");
+ digitalWrite(PIN_WIRE_SCL, LOW);
+ }
+ ```
+
+ Tento kód kontroluje úroveň vlhkosti půdy ze senzoru vlhkosti půdy. Pokud je hodnota vyšší než 450, relé se zapne, a pokud je nižší než 450, relé se vypne.
+
+ > 💁 Pamatujte, že kapacitní senzor vlhkosti půdy čte nižší hodnoty při vyšší vlhkosti půdy a vyšší hodnoty při nižší vlhkosti.
+
+1. Sestavte a nahrajte kód do Wio Terminalu.
+
+1. Sledujte zařízení přes sériový monitor. Uvidíte, jak se relé zapíná nebo vypíná v závislosti na úrovni vlhkosti půdy. Vyzkoušejte v suché půdě a poté přidejte vodu.
+
+ ```output
+ Soil Moisture: 638
+ Soil Moisture is too low, turning relay on.
+ Soil Moisture: 452
+ Soil Moisture is too low, turning relay on.
+ Soil Moisture: 347
+ Soil Moisture is ok, turning relay off.
+ ```
+
+> 💁 Tento kód najdete ve složce [code-relay/wio-terminal](../../../../../2-farm/lessons/3-automated-plant-watering/code-relay/wio-terminal).
+
+😀 Program pro ovládání relé senzorem vlhkosti půdy byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md
new file mode 100644
index 00000000..d22ff09a
--- /dev/null
+++ b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md
@@ -0,0 +1,451 @@
+
+# Přesuňte svou rostlinu do cloudu
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+Tato lekce byla součástí [IoT for Beginners Project 2 - série Digitální zemědělství](https://youtube.com/playlist?list=PLmsFUfdnGr3yCutmcVg6eAUEfsGiFXgcx) od [Microsoft Reactor](https://developer.microsoft.com/reactor/?WT.mc_id=academic-17441-jabenn).
+
+[](https://youtu.be/bNxjopXkhvk)
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/15)
+
+## Úvod
+
+V minulé lekci jste se naučili, jak připojit svou rostlinu k MQTT brokeru a ovládat relé pomocí serverového kódu běžícího lokálně. To tvoří základ internetově propojeného automatizovaného zavlažovacího systému, který se používá od jednotlivých rostlin doma až po komerční farmy.
+
+IoT zařízení komunikovalo s veřejným MQTT brokerem jako způsob demonstrace principů, ale to není nejspolehlivější ani nejbezpečnější metoda. V této lekci se dozvíte o cloudu a IoT funkcích poskytovaných veřejnými cloudovými službami. Také se naučíte, jak přesunout svou rostlinu z veřejného MQTT brokeru na jednu z těchto cloudových služeb.
+
+V této lekci se budeme zabývat:
+
+* [Co je cloud?](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud)
+* [Vytvoření cloudového předplatného](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud)
+* [Cloudové IoT služby](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud)
+* [Vytvoření IoT služby v cloudu](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud)
+* [Komunikace s IoT Hub](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud)
+* [Připojení zařízení k IoT službě](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud)
+
+## Co je cloud?
+
+Před cloudem, když chtěla firma poskytovat služby svým zaměstnancům (například databáze nebo úložiště souborů) nebo veřejnosti (například webové stránky), musela vybudovat a provozovat datové centrum. To mohlo být od místnosti s několika počítači až po budovu s mnoha počítači. Firma musela spravovat vše, včetně:
+
+* Nákupu počítačů
+* Údržby hardwaru
+* Napájení a chlazení
+* Síťové infrastruktury
+* Zabezpečení, včetně zabezpečení budovy a softwaru na počítačích
+* Instalace a aktualizace softwaru
+
+To mohlo být velmi drahé, vyžadovalo širokou škálu kvalifikovaných zaměstnanců a bylo velmi pomalé při změnách, když to bylo potřeba. Například pokud by online obchod potřeboval plánovat na rušnou sváteční sezónu, musel by plánovat měsíce dopředu, aby nakoupil více hardwaru, nakonfiguroval ho, nainstaloval software a spustil prodejní proces. Po skončení sváteční sezóny, kdy prodeje opět klesnou, by zůstaly počítače, za které zaplatili, nevyužité až do další rušné sezóny.
+
+✅ Myslíte si, že by to umožnilo firmám rychle reagovat? Pokud by se online prodejce oblečení náhle stal populárním díky celebritě, která byla viděna v jejich oblečení, dokázali by rychle zvýšit výpočetní výkon, aby zvládli náhlý příliv objednávek?
+
+### Počítač někoho jiného
+
+Cloud je často žertovně označován jako "počítač někoho jiného". Původní myšlenka byla jednoduchá - místo nákupu počítačů si pronajmete počítač někoho jiného. Někdo jiný, poskytovatel cloudových služeb, by spravoval obrovská datová centra. Byl by zodpovědný za nákup a instalaci hardwaru, správu napájení a chlazení, síťovou infrastrukturu, zabezpečení budovy, aktualizace hardwaru a softwaru, vše. Jako zákazník byste si pronajali počítače, které potřebujete, pronajímali více, když poptávka stoupá, a snižovali počet pronajatých počítačů, když poptávka klesá. Tato cloudová datová centra jsou po celém světě.
+
+
+
+
+Tato datová centra mohou mít rozlohu několika čtverečních kilometrů. Obrázky výše byly pořízeny před několika lety v Microsoft cloudovém datovém centru a ukazují počáteční velikost spolu s plánovanou expanzí. Oblast vyčištěná pro expanzi má přes 5 čtverečních kilometrů.
+
+> 💁 Tato datová centra vyžadují tak velké množství energie, že některá mají vlastní elektrárny. Díky své velikosti a úrovni investic od poskytovatelů cloudových služeb jsou obvykle velmi ekologická. Jsou efektivnější než obrovské množství malých datových center, běží převážně na obnovitelnou energii a poskytovatelé cloudových služeb se snaží snižovat odpad, omezovat spotřebu vody a znovu vysazovat lesy, aby nahradili ty, které byly vykáceny kvůli výstavbě datových center. Více o tom, jak jeden poskytovatel cloudových služeb pracuje na udržitelnosti, si můžete přečíst na [stránkách o udržitelnosti Azure](https://azure.microsoft.com/global-infrastructure/sustainability/?WT.mc_id=academic-17441-jabenn).
+
+✅ Udělejte si průzkum: Přečtěte si o hlavních cloudových službách, jako je [Azure od Microsoftu](https://azure.microsoft.com/?WT.mc_id=academic-17441-jabenn) nebo [GCP od Googlu](https://cloud.google.com). Kolik datových center mají a kde se nacházejí?
+
+Používání cloudu snižuje náklady pro firmy a umožňuje jim soustředit se na to, co dělají nejlépe, přičemž odborné znalosti v oblasti cloud computingu zůstávají v rukou poskytovatele. Firmy již nemusí pronajímat nebo kupovat prostor v datovém centru, platit různým poskytovatelům za konektivitu a energii nebo zaměstnávat odborníky. Místo toho mohou platit jeden měsíční účet poskytovateli cloudových služeb, který se postará o vše.
+
+Poskytovatel cloudových služeb pak může využít úspory z rozsahu ke snížení nákladů, nakupovat počítače ve velkém za nižší ceny, investovat do nástrojů pro snížení pracovní zátěže při údržbě, dokonce navrhovat a vyrábět vlastní hardware pro zlepšení své cloudové nabídky.
+
+### Microsoft Azure
+
+Azure je cloud pro vývojáře od Microsoftu a je to cloud, který budete používat v těchto lekcích. Video níže poskytuje krátký přehled o Azure:
+
+[](https://www.microsoft.com/videoplayer/embed/RE4Ibng?WT.mc_id=academic-17441-jabenn)
+
+## Vytvoření cloudového předplatného
+
+Abyste mohli používat služby v cloudu, budete si muset zaregistrovat předplatné u poskytovatele cloudových služeb. Pro tuto lekci si zaregistrujete předplatné Microsoft Azure. Pokud již máte předplatné Azure, můžete tento úkol přeskočit. Podrobnosti o předplatném popsané zde jsou aktuální v době psaní, ale mohou se změnit.
+
+> 💁 Pokud máte k těmto lekcím přístup prostřednictvím své školy, možná již máte k dispozici předplatné Azure. Zkontrolujte to u svého učitele.
+
+Existují dva různé typy bezplatného předplatného Azure, které si můžete zaregistrovat:
+
+* **Azure pro studenty** - Toto je předplatné určené pro studenty starší 18 let. K registraci nepotřebujete kreditní kartu a použijete svou školní e-mailovou adresu k ověření, že jste student. Po registraci získáte 100 USD na výdaje za cloudové zdroje spolu s bezplatnými službami, včetně bezplatné verze IoT služby. Toto předplatné trvá 12 měsíců a můžete ho obnovit každý rok, kdy zůstanete studentem.
+
+* **Bezplatné předplatné Azure** - Toto je předplatné pro kohokoli, kdo není studentem. K registraci budete potřebovat kreditní kartu, ale vaše karta nebude účtována, slouží pouze k ověření, že jste skutečný člověk, nikoli bot. Získáte 200 USD kreditu na použití během prvních 30 dní na jakékoli služby spolu s bezplatnými úrovněmi služeb Azure. Jakmile váš kredit vyprší, vaše karta nebude účtována, pokud nepřevedete předplatné na režim platby za použití.
+
+> 💁 Microsoft nabízí předplatné Azure pro studenty Starter pro studenty mladší 18 let, ale v době psaní tento typ předplatného nepodporuje žádné IoT služby.
+
+### Úkol - registrace bezplatného cloudového předplatného
+
+Pokud jste student starší 18 let, můžete si zaregistrovat předplatné Azure pro studenty. Budete muset ověřit svou školní e-mailovou adresu. Můžete to udělat dvěma způsoby:
+
+* Zaregistrujte se do GitHub student developer pack na [education.github.com/pack](https://education.github.com/pack). To vám poskytne přístup k řadě nástrojů a nabídek, včetně GitHubu a Microsoft Azure. Po registraci do developer pack můžete aktivovat nabídku Azure pro studenty.
+
+* Zaregistrujte se přímo na účet Azure pro studenty na [azure.microsoft.com/free/students](https://azure.microsoft.com/free/students/?WT.mc_id=academic-17441-jabenn).
+
+> ⚠️ Pokud vaše školní e-mailová adresa není rozpoznána, vytvořte [problém v tomto repozitáři](https://github.com/Microsoft/IoT-For-Beginners/issues) a zjistíme, zda ji lze přidat do seznamu povolených adres Azure pro studenty.
+
+Pokud nejste student nebo nemáte platnou školní e-mailovou adresu, můžete si zaregistrovat bezplatné předplatné Azure.
+
+* Zaregistrujte se na bezplatné předplatné Azure na [azure.microsoft.com/free](https://azure.microsoft.com/free/?WT.mc_id=academic-17441-jabenn)
+
+## Cloudové IoT služby
+
+Veřejný testovací MQTT broker, který jste používali, je skvělý nástroj při učení, ale má několik nevýhod jako nástroj pro komerční použití:
+
+* Spolehlivost - je to bezplatná služba bez záruk, která může být kdykoli vypnuta
+* Zabezpečení - je veřejná, takže kdokoli může poslouchat vaši telemetrii nebo posílat příkazy k ovládání vašeho hardwaru
+* Výkon - je navržena pouze pro několik testovacích zpráv, takže by nezvládla velké množství zpráv
+* Objevování - neexistuje způsob, jak zjistit, jaká zařízení jsou připojena
+
+IoT služby v cloudu tyto problémy řeší. Jsou spravovány velkými poskytovateli cloudových služeb, kteří investují do spolehlivosti a jsou připraveni řešit případné problémy. Mají zabudované zabezpečení, které brání hackerům číst vaše data nebo posílat falešné příkazy. Jsou také vysoce výkonné, schopné zvládnout mnoho milionů zpráv každý den, využívajíce cloud ke škálování podle potřeby.
+
+> 💁 I když za tyto výhody platíte měsíčním poplatkem, většina poskytovatelů cloudových služeb nabízí bezplatnou verzi své IoT služby s omezeným počtem zpráv za den nebo zařízení, která se mohou připojit. Tato bezplatná verze je obvykle více než dostatečná pro vývojáře, aby se o službě naučil. V této lekci budete používat bezplatnou verzi.
+
+IoT zařízení se připojují ke cloudové službě buď pomocí SDK zařízení (knihovny, která poskytuje kód pro práci s funkcemi služby), nebo přímo prostřednictvím komunikačního protokolu, jako je MQTT nebo HTTP. SDK zařízení je obvykle nejjednodušší cesta, protože se postará o vše, například o to, jaké témata publikovat nebo odebírat, a jak řešit zabezpečení.
+
+
+
+Vaše zařízení pak komunikuje s ostatními částmi vaší aplikace prostřednictvím této služby - podobně jako jste posílali telemetrii a přijímali příkazy přes MQTT. To se obvykle děje pomocí SDK služby nebo podobné knihovny. Zprávy přicházejí z vašeho zařízení do služby, kde je ostatní komponenty vaší aplikace mohou číst, a zprávy mohou být posílány zpět na vaše zařízení.
+
+
+
+Tyto služby implementují zabezpečení tím, že znají všechna zařízení, která se mohou připojit a posílat data, buď tím, že jsou zařízení předem registrována u služby, nebo tím, že zařízení mají tajné klíče nebo certifikáty, které mohou použít k registraci u služby při prvním připojení. Neznámá zařízení se nemohou připojit, pokud se o to pokusí, služba připojení odmítne a ignoruje zprávy, které posílají.
+
+✅ Udělejte si průzkum: Jaká je nevýhoda otevřené IoT služby, kde se může připojit jakékoli zařízení nebo kód? Můžete najít konkrétní příklady hackerů, kteří toho využili?
+
+Ostatní komponenty vaší aplikace se mohou připojit k IoT službě a zjistit všechna připojená nebo registrovaná zařízení a komunikovat s nimi přímo, buď hromadně, nebo jednotlivě.
+💁 IoT služby také implementují další funkce a poskytovatelé cloudových služeb mají další služby a aplikace, které lze připojit k této službě. Například pokud chcete uložit všechny telemetrické zprávy zaslané všemi zařízeními do databáze, obvykle stačí jen několik kliknutí v konfiguračním nástroji poskytovatele cloudu, abyste službu připojili k databázi a začali streamovat data.
+## Vytvoření IoT služby v cloudu
+
+Nyní, když máte předplatné Azure, můžete se přihlásit k IoT službě. IoT služba od Microsoftu se nazývá Azure IoT Hub.
+
+
+
+Níže uvedené video poskytuje krátký přehled o Azure IoT Hub:
+
+[](https://www.youtube.com/watch?v=smuZaZZXKsU)
+
+> 🎥 Klikněte na obrázek výše a podívejte se na video
+
+✅ Udělejte si chvíli na průzkum a přečtěte si přehled IoT Hub v [dokumentaci Microsoft IoT Hub](https://docs.microsoft.com/azure/iot-hub/about-iot-hub?WT.mc_id=academic-17441-jabenn).
+
+Cloudové služby dostupné v Azure lze konfigurovat prostřednictvím webového portálu nebo pomocí rozhraní příkazového řádku (CLI). Pro tento úkol budete používat CLI.
+
+### Úkol - instalace Azure CLI
+
+Abyste mohli používat Azure CLI, musíte jej nejprve nainstalovat na svůj PC nebo Mac.
+
+1. Postupujte podle pokynů v [dokumentaci Azure CLI](https://docs.microsoft.com/cli/azure/install-azure-cli?WT.mc_id=academic-17441-jabenn) a nainstalujte CLI.
+
+1. Azure CLI podporuje řadu rozšíření, která přidávají možnosti pro správu široké škály služeb Azure. Nainstalujte rozšíření IoT spuštěním následujícího příkazu z příkazového řádku nebo terminálu:
+
+ ```sh
+ az extension add --name azure-iot
+ ```
+
+1. Z příkazového řádku nebo terminálu spusťte následující příkaz pro přihlášení k vašemu předplatnému Azure prostřednictvím Azure CLI.
+
+ ```sh
+ az login
+ ```
+
+ Ve vašem výchozím prohlížeči se otevře webová stránka. Přihlaste se pomocí účtu, který jste použili k registraci předplatného Azure. Po přihlášení můžete zavřít kartu prohlížeče.
+
+1. Pokud máte více předplatných Azure, například školní předplatné a vlastní předplatné Azure for Students, budete muset vybrat to, které chcete použít. Spusťte následující příkaz pro zobrazení všech předplatných, ke kterým máte přístup:
+
+ ```sh
+ az account list --output table
+ ```
+
+ Ve výstupu uvidíte název každého předplatného spolu s jeho `SubscriptionId`.
+
+ ```output
+ ➜ ~ az account list --output table
+ Name CloudName SubscriptionId State IsDefault
+ ---------------------- ----------- ------------------------------------ ------- -----------
+ School-subscription AzureCloud cb30cde9-814a-42f0-a111-754cb788e4e1 Enabled True
+ Azure for Students AzureCloud fa51c31b-162c-4599-add6-781def2e1fbf Enabled False
+ ```
+
+ Chcete-li vybrat předplatné, které chcete použít, použijte následující příkaz:
+
+ ```sh
+ az account set --subscription
+ ```
+
+ Nahraďte `` ID předplatného, které chcete použít. Po spuštění tohoto příkazu znovu spusťte příkaz pro zobrazení vašich účtů. Uvidíte, že sloupec `IsDefault` bude označen jako `True` pro předplatné, které jste právě nastavili.
+
+### Úkol - vytvoření skupiny prostředků
+
+Služby Azure, jako jsou instance IoT Hub, virtuální počítače, databáze nebo AI služby, se označují jako **prostředky**. Každý prostředek musí být umístěn ve **skupině prostředků**, což je logické seskupení jednoho nebo více prostředků.
+
+> 💁 Používání skupin prostředků znamená, že můžete spravovat více služeb najednou. Například po dokončení všech lekcí tohoto projektu můžete skupinu prostředků smazat a všechny prostředky v ní budou automaticky odstraněny.
+
+1. Po celém světě existuje několik datových center Azure, rozdělených do regionů. Když vytvoříte prostředek nebo skupinu prostředků Azure, musíte určit, kde chcete, aby byla vytvořena. Spusťte následující příkaz pro získání seznamu lokalit:
+
+ ```sh
+ az account list-locations --output table
+ ```
+
+ Uvidíte seznam lokalit. Tento seznam bude dlouhý.
+
+ > 💁 V době psaní tohoto textu je k dispozici 65 lokalit, kam můžete nasadit.
+
+ ```output
+ ➜ ~ az account list-locations --output table
+ DisplayName Name RegionalDisplayName
+ ------------------------ ------------------- -------------------------------------
+ East US eastus (US) East US
+ East US 2 eastus2 (US) East US 2
+ South Central US southcentralus (US) South Central US
+ ...
+ ```
+
+ Poznamenejte si hodnotu ze sloupce `Name` regionu, který je vám nejblíže. Regiony můžete najít na mapě na stránce [Azure geographies](https://azure.microsoft.com/global-infrastructure/geographies/?WT.mc_id=academic-17441-jabenn).
+
+1. Spusťte následující příkaz pro vytvoření skupiny prostředků nazvané `soil-moisture-sensor`. Názvy skupin prostředků musí být v rámci vašeho předplatného jedinečné.
+
+ ```sh
+ az group create --name soil-moisture-sensor \
+ --location
+ ```
+
+ Nahraďte `` lokalitou, kterou jste vybrali v předchozím kroku.
+
+### Úkol - vytvoření IoT Hub
+
+Nyní můžete vytvořit prostředek IoT Hub ve vaší skupině prostředků.
+
+1. Použijte následující příkaz pro vytvoření prostředku IoT Hub:
+
+ ```sh
+ az iot hub create --resource-group soil-moisture-sensor \
+ --sku F1 \
+ --partition-count 2 \
+ --name
+ ```
+
+ Nahraďte `` názvem vašeho hubu. Tento název musí být globálně jedinečný - žádný jiný IoT Hub vytvořený kýmkoli jiným nemůže mít stejný název. Tento název se používá v URL, která odkazuje na hub, takže musí být jedinečný. Použijte něco jako `soil-moisture-sensor-` a přidejte jedinečný identifikátor na konec, například nějaká náhodná slova nebo vaše jméno.
+
+ Možnost `--sku F1` říká, že se použije bezplatná úroveň. Bezplatná úroveň podporuje 8 000 zpráv denně spolu s většinou funkcí placených úrovní.
+
+ > 🎓 Různé cenové úrovně služeb Azure se označují jako úrovně. Každá úroveň má jinou cenu a poskytuje různé funkce nebo objemy dat.
+
+ > 💁 Pokud se chcete dozvědět více o cenách, můžete se podívat na [průvodce cenami Azure IoT Hub](https://azure.microsoft.com/pricing/details/iot-hub/?WT.mc_id=academic-17441-jabenn).
+
+ Možnost `--partition-count 2` definuje, kolik datových proudů IoT Hub podporuje. Více oddílů snižuje blokování dat, když více zařízení čte a zapisuje do IoT Hub. Oddíly jsou mimo rozsah těchto lekcí, ale tato hodnota musí být nastavena pro vytvoření IoT Hub v bezplatné úrovni.
+
+ > 💁 Na jedno předplatné můžete mít pouze jeden IoT Hub v bezplatné úrovni.
+
+IoT Hub bude vytvořen. Dokončení může trvat minutu nebo dvě.
+
+## Komunikace s IoT Hub
+
+V předchozí lekci jste použili MQTT a posílali zprávy tam a zpět na různých tématech, přičemž různá témata měla různé účely. Místo posílání zpráv přes různá témata má IoT Hub několik definovaných způsobů, jak zařízení komunikovat s hubem nebo hub komunikovat se zařízením.
+
+> 💁 Pod povrchem může tato komunikace mezi IoT Hub a vaším zařízením používat MQTT, HTTPS nebo AMQP.
+
+* Zprávy z zařízení do cloudu (D2C) - to jsou zprávy posílané z zařízení do IoT Hub, například telemetrie. Tyto zprávy pak může vaše aplikační kód číst z IoT Hub.
+
+ > 🎓 Pod povrchem IoT Hub používá službu Azure nazvanou [Event Hubs](https://docs.microsoft.com/azure/event-hubs/?WT.mc_id=academic-17441-jabenn). Když píšete kód pro čtení zpráv poslaných do hubu, často se nazývají události.
+
+* Zprávy z cloudu do zařízení (C2D) - to jsou zprávy posílané z aplikačního kódu přes IoT Hub do IoT zařízení.
+
+* Požadavky na přímé metody - to jsou zprávy posílané z aplikačního kódu přes IoT Hub do IoT zařízení, které požadují, aby zařízení něco provedlo, například ovládání aktuátoru. Tyto zprávy vyžadují odpověď, aby váš aplikační kód mohl zjistit, zda byly úspěšně zpracovány.
+
+* Device twins - to jsou JSON dokumenty synchronizované mezi zařízením a IoT Hub, které se používají k ukládání nastavení nebo jiných vlastností buď hlášených zařízením, nebo nastavených na zařízení (známé jako požadované) IoT Hubem.
+
+IoT Hub může ukládat zprávy a požadavky na přímé metody po konfigurovatelnou dobu (výchozí je jeden den), takže pokud zařízení nebo aplikační kód ztratí připojení, může po opětovném připojení stále získat zprávy poslané během offline režimu. Device twins jsou v IoT Hub uchovávány trvale, takže zařízení se může kdykoli znovu připojit a získat nejnovější device twin.
+
+✅ Udělejte si průzkum: Přečtěte si více o těchto typech zpráv v [pokynech pro komunikaci z zařízení do cloudu](https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-d2c-guidance?WT.mc_id=academic-17441-jabenn) a [pokynech pro komunikaci z cloudu do zařízení](https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-c2d-guidance?WT.mc_id=academic-17441-jabenn) v dokumentaci IoT Hub.
+
+## Připojení vašeho zařízení k IoT službě
+
+Jakmile je hub vytvořen, vaše IoT zařízení se k němu může připojit. Připojit se mohou pouze registrovaná zařízení, takže budete muset nejprve zařízení zaregistrovat. Po registraci získáte zpět připojovací řetězec, který zařízení může použít k připojení. Tento připojovací řetězec je specifický pro zařízení a obsahuje informace o IoT Hubu, zařízení a tajný klíč, který umožní tomuto zařízení připojení.
+
+> 🎓 Připojovací řetězec je obecný termín pro text, který obsahuje podrobnosti o připojení. Používají se při připojení k IoT Hubům, databázím a mnoha dalším službám. Obvykle se skládají z identifikátoru služby, jako je URL, a bezpečnostních informací, jako je tajný klíč. Tyto informace se předávají SDK pro připojení ke službě.
+
+> ⚠️ Připojovací řetězce by měly být uchovávány v bezpečí! Bezpečnost bude podrobněji pokryta v budoucí lekci.
+
+### Úkol - registrace vašeho IoT zařízení
+
+IoT zařízení může být registrováno s vaším IoT Hubem pomocí Azure CLI.
+
+1. Spusťte následující příkaz pro registraci zařízení:
+
+ ```sh
+ az iot hub device-identity create --device-id soil-moisture-sensor \
+ --hub-name
+ ```
+
+ Nahraďte `` názvem, který jste použili pro váš IoT Hub.
+
+ Tím vytvoříte zařízení s ID `soil-moisture-sensor`.
+
+1. Když se vaše IoT zařízení připojuje k vašemu IoT Hubu pomocí SDK, musí použít připojovací řetězec, který poskytuje URL hubu spolu s tajným klíčem. Spusťte následující příkaz pro získání připojovacího řetězce:
+
+ ```sh
+ az iot hub device-identity connection-string show --device-id soil-moisture-sensor \
+ --output table \
+ --hub-name
+ ```
+
+ Nahraďte `` názvem, který jste použili pro váš IoT Hub.
+
+1. Uložte připojovací řetězec, který se zobrazí ve výstupu, protože jej budete potřebovat později.
+
+### Úkol - připojení vašeho IoT zařízení k cloudu
+
+Projděte si relevantní průvodce pro připojení vašeho IoT zařízení k cloudu:
+
+* [Arduino - Wio Terminal](wio-terminal-connect-hub.md)
+* [Jednodeskový počítač - Raspberry Pi/virtuální IoT zařízení](single-board-computer-connect-hub.md)
+
+### Úkol - monitorování událostí
+
+Prozatím nebudete aktualizovat váš serverový kód. Místo toho můžete použít Azure CLI k monitorování událostí z vašeho IoT zařízení.
+
+1. Ujistěte se, že vaše IoT zařízení běží a odesílá hodnoty telemetrie vlhkosti půdy.
+
+1. Spusťte následující příkaz ve vašem příkazovém řádku nebo terminálu pro monitorování zpráv posílaných do vašeho IoT Hubu:
+
+ ```sh
+ az iot hub monitor-events --hub-name
+ ```
+
+ Nahraďte `` názvem, který jste použili pro váš IoT Hub.
+
+ Uvidíte zprávy, které se objeví ve výstupu konzole, jakmile je vaše IoT zařízení odešle.
+
+ ```output
+ Starting event monitor, use ctrl-c to stop...
+ {
+ "event": {
+ "origin": "soil-moisture-sensor",
+ "module": "",
+ "interface": "",
+ "component": "",
+ "payload": "{\"soil_moisture\": 376}"
+ }
+ },
+ {
+ "event": {
+ "origin": "soil-moisture-sensor",
+ "module": "",
+ "interface": "",
+ "component": "",
+ "payload": "{\"soil_moisture\": 381}"
+ }
+ }
+ ```
+
+ Obsah `payload` bude odpovídat zprávě odeslané vaším IoT zařízením.
+
+ > V době psaní tohoto textu rozšíření `az iot` nefunguje plně na Apple Silicon. Pokud používáte zařízení Apple Silicon, budete muset monitorovat zprávy jiným způsobem, například pomocí [Azure IoT Tools pro Visual Studio Code](https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-vscode-iot-toolkit-cloud-device-messaging).
+
+1. Tyto zprávy mají automaticky připojené různé vlastnosti, jako je časové razítko, kdy byly odeslány. Tyto vlastnosti se nazývají *anotace*. Pro zobrazení všech anotací zpráv použijte následující příkaz:
+
+ ```sh
+ az iot hub monitor-events --properties anno --hub-name
+ ```
+
+ Nahraďte `` názvem, který jste použili pro váš IoT Hub.
+
+ Uvidíte zprávy, které se objeví ve výstupu konzole, jakmile je vaše IoT zařízení odešle.
+
+ ```output
+ Starting event monitor, use ctrl-c to stop...
+ {
+ "event": {
+ "origin": "soil-moisture-sensor",
+ "module": "",
+ "interface": "",
+ "component": "",
+ "properties": {},
+ "annotations": {
+ "iothub-connection-device-id": "soil-moisture-sensor",
+ "iothub-connection-auth-method": "{\"scope\":\"device\",\"type\":\"sas\",\"issuer\":\"iothub\",\"acceptingIpFilterRule\":null}",
+ "iothub-connection-auth-generation-id": "637553997165220462",
+ "iothub-enqueuedtime": 1619976150288,
+ "iothub-message-source": "Telemetry",
+ "x-opt-sequence-number": 1379,
+ "x-opt-offset": "550576",
+ "x-opt-enqueued-time": 1619976150277
+ },
+ "payload": "{\"soil_moisture\": 381}"
+ }
+ }
+ ```
+
+ Časové hodnoty v anotacích jsou v [UNIX čase](https://wikipedia.org/wiki/Unix_time), což představuje počet sekund od půlnoci 1. ledna 1970.
+
+ Ukončete monitor událostí, když budete hotovi.
+
+### Úkol - ovládání vašeho IoT zařízení
+
+Pomocí Azure CLI můžete také volat přímé metody na vašem IoT zařízení.
+
+1. Spusťte následující příkaz ve vašem příkazovém řádku nebo terminálu pro vyvolání metody `relay_on` na IoT zařízení:
+
+ ```sh
+ az iot hub invoke-device-method --device-id soil-moisture-sensor \
+ --method-name relay_on \
+ --method-payload '{}' \
+ --hub-name
+ ```
+
+ Nahraďte `
+
+` se jménem, které jste použili pro svůj IoT Hub.
+
+ Tímto odešlete požadavek na přímou metodu pro metodu specifikovanou jako `method-name`. Přímé metody mohou obsahovat datový payload pro metodu, který lze specifikovat v parametru `method-payload` jako JSON.
+
+ Uvidíte, že relé se zapne, a odpovídající výstup z vašeho IoT zařízení:
+
+ ```output
+ Direct method received - relay_on
+ ```
+
+1. Opakujte výše uvedený krok, ale nastavte `--method-name` na `relay_off`. Uvidíte, že relé se vypne a odpovídající výstup z IoT zařízení.
+
+---
+
+## 🚀 Výzva
+
+Bezplatná úroveň IoT Hub umožňuje 8 000 zpráv denně. Kód, který jste napsali, odesílá telemetrické zprávy každých 10 sekund. Kolik zpráv denně to znamená, pokud je jedna zpráva každých 10 sekund?
+
+Zamyslete se, jak často by mělo být odesíláno měření vlhkosti půdy? Jak můžete změnit svůj kód, abyste zůstali v rámci bezplatné úrovně, kontrolovali tak často, jak je potřeba, ale ne příliš často? Co kdybyste chtěli přidat druhé zařízení?
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/16)
+
+## Přehled a samostudium
+
+SDK pro IoT Hub je open source jak pro Arduino, tak pro Python. V repozitářích kódu na GitHubu je řada ukázek, které ukazují, jak pracovat s různými funkcemi IoT Hubu.
+
+* Pokud používáte Wio Terminal, podívejte se na [Arduino ukázky na GitHubu](https://github.com/Azure/azure-iot-pal-arduino/tree/master/pal/samples)
+* Pokud používáte Raspberry Pi nebo virtuální zařízení, podívejte se na [Python ukázky na GitHubu](https://github.com/Azure/azure-iot-sdk-python/tree/master/azure-iot-hub/samples)
+
+## Zadání
+
+[Zjistěte více o cloudových službách](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/assignment.md b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/assignment.md
new file mode 100644
index 00000000..c793804b
--- /dev/null
+++ b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/assignment.md
@@ -0,0 +1,33 @@
+
+# Naučte se o cloudových službách
+
+## Pokyny
+
+Cloudy, jako například Azure od Microsoftu, nabízejí více než jen pronájem výpočetního výkonu. Hlavní typy cloudových nabídek zahrnují:
+
+* Infrastruktura jako služba (IaaS)
+* Platforma jako služba (PaaS)
+* Serverless
+* Software jako služba (SaaS)
+
+Seznamte se s těmito různými typy nabídek a vysvětlete, co znamenají a jak se liší. Vysvětlete, které z těchto nabídek jsou relevantní pro vývojáře IoT.
+
+## Hodnoticí kritéria
+
+| Kritéria | Vynikající | Přiměřené | Potřebuje zlepšení |
+| -------- | ---------- | --------- | ------------------ |
+| Vysvětlení různých cloudových nabídek | Poskytl jasná vysvětlení všech 4 typů nabídek | Dokázal vysvětlit 3 typy nabídek | Dokázal vysvětlit pouze 1 nebo 2 typy nabídek |
+| Vysvětlení, která nabídka je relevantní pro IoT | Popsal, které nabídky jsou relevantní pro vývojáře IoT a proč | Popsal, které nabídky jsou relevantní pro vývojáře IoT, ale nevysvětlil proč | Nebyl schopen popsat, které nabídky jsou relevantní pro vývojáře IoT |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/single-board-computer-connect-hub.md b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/single-board-computer-connect-hub.md
new file mode 100644
index 00000000..b71378e7
--- /dev/null
+++ b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/single-board-computer-connect-hub.md
@@ -0,0 +1,130 @@
+
+# Připojte své IoT zařízení ke cloudu - Virtuální IoT hardware a Raspberry Pi
+
+V této části lekce připojíte své virtuální IoT zařízení nebo Raspberry Pi k IoT Hubu, abyste mohli odesílat telemetrii a přijímat příkazy.
+
+## Připojte své zařízení k IoT Hubu
+
+Dalším krokem je připojení vašeho zařízení k IoT Hubu.
+
+### Úkol - připojení k IoT Hubu
+
+1. Otevřete složku `soil-moisture-sensor` ve VS Code. Ujistěte se, že virtuální prostředí běží v terminálu, pokud používáte virtuální IoT zařízení.
+
+1. Nainstalujte několik dalších balíčků pomocí Pip:
+
+ ```sh
+ pip3 install azure-iot-device
+ ```
+
+ `azure-iot-device` je knihovna pro komunikaci s vaším IoT Hubem.
+
+1. Přidejte následující importy na začátek souboru `app.py`, pod stávající importy:
+
+ ```python
+ from azure.iot.device import IoTHubDeviceClient, Message, MethodResponse
+ ```
+
+ Tento kód importuje SDK pro komunikaci s vaším IoT Hubem.
+
+1. Odstraňte řádek `import paho.mqtt.client as mqtt`, protože tato knihovna již není potřeba. Odstraňte veškerý kód MQTT včetně názvů témat, veškerý kód, který používá `mqtt_client`, a funkci `handle_command`. Zachovejte smyčku `while True:`, pouze odstraňte řádek `mqtt_client.publish` z této smyčky.
+
+1. Přidejte následující kód pod importy:
+
+ ```python
+ connection_string = ""
+ ```
+
+ Nahraďte `` připojovacím řetězcem, který jste získali pro zařízení dříve v této lekci.
+
+ > 💁 Toto není nejlepší praxe. Připojovací řetězce by nikdy neměly být ukládány do zdrojového kódu, protože mohou být zkontrolovány do systému správy zdrojového kódu a nalezeny kýmkoliv. Děláme to zde kvůli jednoduchosti. Ideálně byste měli použít něco jako proměnné prostředí a nástroj jako [`python-dotenv`](https://pypi.org/project/python-dotenv/). Více se o tom dozvíte v nadcházející lekci.
+
+1. Pod tento kód přidejte následující, abyste vytvořili objekt klienta zařízení, který může komunikovat s IoT Hubem, a připojte ho:
+
+ ```python
+ device_client = IoTHubDeviceClient.create_from_connection_string(connection_string)
+
+ print('Connecting')
+ device_client.connect()
+ print('Connected')
+ ```
+
+1. Spusťte tento kód. Uvidíte, že se vaše zařízení připojí.
+
+ ```output
+ pi@raspberrypi:~/soil-moisture-sensor $ python3 app.py
+ Connecting
+ Connected
+ Soil moisture: 379
+ ```
+
+## Odesílání telemetrie
+
+Nyní, když je vaše zařízení připojeno, můžete odesílat telemetrii do IoT Hubu místo MQTT brokeru.
+
+### Úkol - odesílání telemetrie
+
+1. Přidejte následující kód do smyčky `while True`, těsně před příkaz `sleep`:
+
+ ```python
+ message = Message(json.dumps({ 'soil_moisture': soil_moisture }))
+ device_client.send_message(message)
+ ```
+
+ Tento kód vytvoří IoT Hub `Message`, která obsahuje hodnotu vlhkosti půdy jako JSON řetězec, a odešle ji do IoT Hubu jako zprávu z zařízení do cloudu.
+
+## Zpracování příkazů
+
+Vaše zařízení musí zpracovat příkaz ze serverového kódu pro ovládání relé. Tento příkaz je odeslán jako požadavek na přímou metodu.
+
+## Úkol - zpracování požadavku na přímou metodu
+
+1. Přidejte následující kód před smyčku `while True`:
+
+ ```python
+ def handle_method_request(request):
+ print("Direct method received - ", request.name)
+
+ if request.name == "relay_on":
+ relay.on()
+ elif request.name == "relay_off":
+ relay.off()
+ ```
+
+ Tento kód definuje metodu `handle_method_request`, která bude volána, když IoT Hub zavolá přímou metodu. Každá přímá metoda má název, a tento kód očekává metodu nazvanou `relay_on` pro zapnutí relé a `relay_off` pro vypnutí relé.
+
+ > 💁 Toto by také mohlo být implementováno v jedné přímé metodě, která by předávala požadovaný stav relé v payloadu, který může být předán s požadavkem na metodu a dostupný z objektu `request`.
+
+1. Přímé metody vyžadují odpověď, která informuje volající kód, že byly zpracovány. Přidejte následující kód na konec funkce `handle_method_request`, abyste vytvořili odpověď na požadavek:
+
+ ```python
+ method_response = MethodResponse.create_from_method_request(request, 200)
+ device_client.send_method_response(method_response)
+ ```
+
+ Tento kód odešle odpověď na požadavek přímé metody s HTTP status kódem 200 a odešle ji zpět do IoT Hubu.
+
+1. Přidejte následující kód pod definici této funkce:
+
+ ```python
+ device_client.on_method_request_received = handle_method_request
+ ```
+
+ Tento kód říká klientovi IoT Hubu, aby volal funkci `handle_method_request`, když je zavolána přímá metoda.
+
+> 💁 Tento kód najdete ve složce [code/pi](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud/code/pi) nebo [code/virtual-device](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud/code/virtual-device).
+
+😀 Váš program senzoru vlhkosti půdy je připojen k vašemu IoT Hubu!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/wio-terminal-connect-hub.md b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/wio-terminal-connect-hub.md
new file mode 100644
index 00000000..07330f22
--- /dev/null
+++ b/translations/cs/2-farm/lessons/4-migrate-your-plant-to-the-cloud/wio-terminal-connect-hub.md
@@ -0,0 +1,306 @@
+
+# Připojte své IoT zařízení ke cloudu - Wio Terminal
+
+V této části lekce připojíte svůj Wio Terminal k IoT Hubu, abyste mohli odesílat telemetrii a přijímat příkazy.
+
+## Připojte své zařízení k IoT Hubu
+
+Dalším krokem je připojení vašeho zařízení k IoT Hubu.
+
+### Úkol - připojení k IoT Hubu
+
+1. Otevřete projekt `soil-moisture-sensor` ve VS Code.
+
+1. Otevřete soubor `platformio.ini`. Odstraňte závislost na knihovně `knolleary/PubSubClient`. Tato knihovna byla použita pro připojení k veřejnému MQTT brokeru, ale není potřeba pro připojení k IoT Hubu.
+
+1. Přidejte následující závislosti knihoven:
+
+ ```ini
+ seeed-studio/Seeed Arduino RTC @ 2.0.0
+ arduino-libraries/AzureIoTHub @ 1.6.0
+ azure/AzureIoTUtility @ 1.6.1
+ azure/AzureIoTProtocol_MQTT @ 1.6.0
+ azure/AzureIoTProtocol_HTTP @ 1.6.0
+ azure/AzureIoTSocket_WiFi @ 1.0.2
+ ```
+
+ Knihovna `Seeed Arduino RTC` poskytuje kód pro interakci s reálným časem na Wio Terminalu, který se používá ke sledování času. Zbývající knihovny umožňují vašemu IoT zařízení připojit se k IoT Hubu.
+
+1. Přidejte následující na konec souboru `platformio.ini`:
+
+ ```ini
+ build_flags =
+ -DDONT_USE_UPLOADTOBLOB
+ ```
+
+ Toto nastavuje příznak kompilátoru, který je potřeba při kompilaci kódu Arduino IoT Hub.
+
+1. Otevřete hlavičkový soubor `config.h`. Odstraňte všechna nastavení MQTT a přidejte následující konstantu pro připojovací řetězec zařízení:
+
+ ```cpp
+ // IoT Hub settings
+ const char *CONNECTION_STRING = "";
+ ```
+
+ Nahraďte `` připojovacím řetězcem pro vaše zařízení, který jste zkopírovali dříve.
+
+1. Připojení k IoT Hubu používá token založený na čase. To znamená, že IoT zařízení musí znát aktuální čas. Na rozdíl od operačních systémů jako Windows, macOS nebo Linux, mikrokontroléry automaticky nesynchronizují aktuální čas přes internet. To znamená, že musíte přidat kód pro získání aktuálního času ze serveru [NTP](https://wikipedia.org/wiki/Network_Time_Protocol). Jakmile je čas získán, může být uložen v reálném časovém hodinách na Wio Terminalu, což umožňuje požadovat správný čas později, za předpokladu, že zařízení neztratí napájení. Přidejte nový soubor nazvaný `ntp.h` s následujícím kódem:
+
+ ```cpp
+ #pragma once
+
+ #include "DateTime.h"
+ #include
+ #include "samd/NTPClientAz.h"
+ #include
+
+ static void initTime()
+ {
+ WiFiUDP _udp;
+ time_t epochTime = (time_t)-1;
+ NTPClientAz ntpClient;
+
+ ntpClient.begin();
+
+ while (true)
+ {
+ epochTime = ntpClient.getEpochTime("0.pool.ntp.org");
+
+ if (epochTime == (time_t)-1)
+ {
+ Serial.println("Fetching NTP epoch time failed! Waiting 2 seconds to retry.");
+ delay(2000);
+ }
+ else
+ {
+ Serial.print("Fetched NTP epoch time is: ");
+
+ char buff[32];
+ sprintf(buff, "%.f", difftime(epochTime, (time_t)0));
+ Serial.println(buff);
+ break;
+ }
+ }
+
+ ntpClient.end();
+
+ struct timeval tv;
+ tv.tv_sec = epochTime;
+ tv.tv_usec = 0;
+
+ settimeofday(&tv, NULL);
+ }
+ ```
+
+ Podrobnosti tohoto kódu jsou mimo rozsah této lekce. Definuje funkci nazvanou `initTime`, která získává aktuální čas ze serveru NTP a používá jej k nastavení hodin na Wio Terminalu.
+
+1. Otevřete soubor `main.cpp` a odstraňte veškerý kód MQTT, včetně hlavičkového souboru `PubSubClient.h`, deklarace proměnné `PubSubClient`, metod `reconnectMQTTClient` a `createMQTTClient` a všech volání těchto proměnných a metod. Tento soubor by měl obsahovat pouze kód pro připojení k WiFi, získání vlhkosti půdy a vytvoření JSON dokumentu s těmito daty.
+
+1. Přidejte následující direktivy `#include` na začátek souboru `main.cpp`, abyste zahrnuli hlavičkové soubory pro knihovny IoT Hubu a pro nastavení času:
+
+ ```cpp
+ #include
+ #include
+ #include
+ #include "ntp.h"
+ ```
+
+1. Přidejte následující volání na konec funkce `setup`, abyste nastavili aktuální čas:
+
+ ```cpp
+ initTime();
+ ```
+
+1. Přidejte následující deklaraci proměnné na začátek souboru, těsně pod direktivy `#include`:
+
+ ```cpp
+ IOTHUB_DEVICE_CLIENT_LL_HANDLE _device_ll_handle;
+ ```
+
+ Tím se deklaruje `IOTHUB_DEVICE_CLIENT_LL_HANDLE`, což je handle pro připojení k IoT Hubu.
+
+1. Pod tímto přidejte následující kód:
+
+ ```cpp
+ static void connectionStatusCallback(IOTHUB_CLIENT_CONNECTION_STATUS result, IOTHUB_CLIENT_CONNECTION_STATUS_REASON reason, void *user_context)
+ {
+ if (result == IOTHUB_CLIENT_CONNECTION_AUTHENTICATED)
+ {
+ Serial.println("The device client is connected to iothub");
+ }
+ else
+ {
+ Serial.println("The device client has been disconnected");
+ }
+ }
+ ```
+
+ Tím se deklaruje callback funkce, která bude volána, když se změní stav připojení k IoT Hubu, například při připojení nebo odpojení. Stav je odeslán na sériový port.
+
+1. Pod tímto přidejte funkci pro připojení k IoT Hubu:
+
+ ```cpp
+ void connectIoTHub()
+ {
+ IoTHub_Init();
+
+ _device_ll_handle = IoTHubDeviceClient_LL_CreateFromConnectionString(CONNECTION_STRING, MQTT_Protocol);
+
+ if (_device_ll_handle == NULL)
+ {
+ Serial.println("Failure creating Iothub device. Hint: Check your connection string.");
+ return;
+ }
+
+ IoTHubDeviceClient_LL_SetConnectionStatusCallback(_device_ll_handle, connectionStatusCallback, NULL);
+ }
+ ```
+
+ Tento kód inicializuje knihovnu IoT Hubu, poté vytvoří připojení pomocí připojovacího řetězce v hlavičkovém souboru `config.h`. Toto připojení je založeno na MQTT. Pokud připojení selže, je to odesláno na sériový port - pokud to vidíte ve výstupu, zkontrolujte připojovací řetězec. Nakonec je nastavena callback funkce pro stav připojení.
+
+1. Zavolejte tuto funkci ve funkci `setup` pod voláním `initTime`:
+
+ ```cpp
+ connectIoTHub();
+ ```
+
+1. Stejně jako u MQTT klienta, tento kód běží na jednom vlákně, takže potřebuje čas na zpracování zpráv odesílaných hubem a zpráv odesílaných do hubu. Přidejte následující na začátek funkce `loop`, abyste to umožnili:
+
+ ```cpp
+ IoTHubDeviceClient_LL_DoWork(_device_ll_handle);
+ ```
+
+1. Sestavte a nahrajte tento kód. Připojení uvidíte v sériovém monitoru:
+
+ ```output
+ Connecting to WiFi..
+ Connected!
+ Fetched NTP epoch time is: 1619983687
+ Sending telemetry {"soil_moisture":391}
+ The device client is connected to iothub
+ ```
+
+ Ve výstupu můžete vidět, jak se načítá čas z NTP, následovaný připojením klienta zařízení. Připojení může trvat několik sekund, takže můžete vidět vlhkost půdy ve výstupu, zatímco se zařízení připojuje.
+
+ > 💁 UNIX čas z NTP můžete převést na čitelnější verzi pomocí webové stránky jako [unixtimestamp.com](https://www.unixtimestamp.com)
+
+## Odesílání telemetrie
+
+Nyní, když je vaše zařízení připojeno, můžete odesílat telemetrii do IoT Hubu místo MQTT brokeru.
+
+### Úkol - odesílání telemetrie
+
+1. Přidejte následující funkci nad funkci `setup`:
+
+ ```cpp
+ void sendTelemetry(const char *telemetry)
+ {
+ IOTHUB_MESSAGE_HANDLE message_handle = IoTHubMessage_CreateFromString(telemetry);
+ IoTHubDeviceClient_LL_SendEventAsync(_device_ll_handle, message_handle, NULL, NULL);
+ IoTHubMessage_Destroy(message_handle);
+ }
+ ```
+
+ Tento kód vytvoří zprávu IoT Hubu ze řetězce předaného jako parametr, odešle ji do hubu a poté vyčistí objekt zprávy.
+
+1. Zavolejte tento kód ve funkci `loop`, těsně za řádkem, kde je telemetrie odesílána na sériový port:
+
+ ```cpp
+ sendTelemetry(telemetry.c_str());
+ ```
+
+## Zpracování příkazů
+
+Vaše zařízení musí zpracovat příkaz ze serverového kódu pro ovládání relé. Tento příkaz je odeslán jako požadavek na přímou metodu.
+
+## Úkol - zpracování požadavku na přímou metodu
+
+1. Přidejte následující kód před funkci `connectIoTHub`:
+
+ ```cpp
+ int directMethodCallback(const char *method_name, const unsigned char *payload, size_t size, unsigned char **response, size_t *response_size, void *userContextCallback)
+ {
+ Serial.printf("Direct method received %s\r\n", method_name);
+
+ if (strcmp(method_name, "relay_on") == 0)
+ {
+ digitalWrite(PIN_WIRE_SCL, HIGH);
+ }
+ else if (strcmp(method_name, "relay_off") == 0)
+ {
+ digitalWrite(PIN_WIRE_SCL, LOW);
+ }
+ }
+ ```
+
+ Tento kód definuje callback metodu, kterou může knihovna IoT Hubu volat, když obdrží požadavek na přímou metodu. Metoda, která je požadována, je odeslána v parametru `method_name`. Tato funkce vypíše volanou metodu na sériový port a poté zapne nebo vypne relé v závislosti na názvu metody.
+
+ > 💁 Toto by také mohlo být implementováno v jedné přímé metodě, která by předávala požadovaný stav relé v payloadu, který může být předán s požadavkem na metodu a dostupný z parametru `payload`.
+
+1. Přidejte následující kód na konec funkce `directMethodCallback`:
+
+ ```cpp
+ char resultBuff[16];
+ sprintf(resultBuff, "{\"Result\":\"\"}");
+ *response_size = strlen(resultBuff);
+ *response = (unsigned char *)malloc(*response_size);
+ memcpy(*response, resultBuff, *response_size);
+
+ return IOTHUB_CLIENT_OK;
+ ```
+
+ Požadavky na přímé metody potřebují odpověď, která je ve dvou částech - odpověď jako text a návratový kód. Tento kód vytvoří výsledek jako následující JSON dokument:
+
+ ```JSON
+ {
+ "Result": ""
+ }
+ ```
+
+ Tento dokument je poté zkopírován do parametru `response` a velikost této odpovědi je nastavena v parametru `response_size`. Tento kód poté vrátí `IOTHUB_CLIENT_OK`, aby ukázal, že metoda byla správně zpracována.
+
+1. Připojte callback přidáním následujícího na konec funkce `connectIoTHub`:
+
+ ```cpp
+ IoTHubClient_LL_SetDeviceMethodCallback(_device_ll_handle, directMethodCallback, NULL);
+ ```
+
+1. Funkce `loop` bude volat funkci `IoTHubDeviceClient_LL_DoWork`, aby zpracovala události odesílané IoT Hubem. Tato funkce je volána pouze každých 10 sekund kvůli `delay`, což znamená, že přímé metody jsou zpracovány pouze každých 10 sekund. Aby to bylo efektivnější, 10sekundové zpoždění může být implementováno jako mnoho kratších zpoždění, přičemž se funkce `IoTHubDeviceClient_LL_DoWork` volá pokaždé. Přidejte následující kód nad funkci `loop`:
+
+ ```cpp
+ void work_delay(int delay_time)
+ {
+ int current = 0;
+ do
+ {
+ IoTHubDeviceClient_LL_DoWork(_device_ll_handle);
+ delay(100);
+ current += 100;
+ } while (current < delay_time);
+ }
+ ```
+
+ Tento kód bude opakovaně volat funkci `IoTHubDeviceClient_LL_DoWork` a zpožďovat o 100 ms pokaždé. Bude to dělat tolikrát, kolik je potřeba, aby zpoždění trvalo dobu uvedenou v parametru `delay_time`. To znamená, že zařízení čeká maximálně 100 ms na zpracování požadavků na přímé metody.
+
+1. Ve funkci `loop` odstraňte volání `IoTHubDeviceClient_LL_DoWork` a nahraďte volání `delay(10000)` následujícím, aby se volala nová funkce:
+
+ ```cpp
+ work_delay(10000);
+ ```
+
+> 💁 Tento kód najdete ve složce [code/wio-terminal](../../../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud/code/wio-terminal).
+
+😀 Váš program pro senzor vlhkosti půdy je připojen k vašemu IoT Hubu!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/5-migrate-application-to-the-cloud/README.md b/translations/cs/2-farm/lessons/5-migrate-application-to-the-cloud/README.md
new file mode 100644
index 00000000..bbd1eecb
--- /dev/null
+++ b/translations/cs/2-farm/lessons/5-migrate-application-to-the-cloud/README.md
@@ -0,0 +1,656 @@
+
+# Přesuňte logiku své aplikace do cloudu
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+Tato lekce byla součástí [IoT for Beginners Project 2 - série Digitální zemědělství](https://youtube.com/playlist?list=PLmsFUfdnGr3yCutmcVg6eAUEfsGiFXgcx) od [Microsoft Reactor](https://developer.microsoft.com/reactor/?WT.mc_id=academic-17441-jabenn).
+
+[](https://youtu.be/VVZDcs5u1_I)
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/17)
+
+## Úvod
+
+V minulé lekci jste se naučili, jak připojit monitorování vlhkosti půdy a ovládání relé k cloudové IoT službě. Dalším krokem je přesunout serverový kód, který řídí časování relé, do cloudu. V této lekci se naučíte, jak to udělat pomocí serverless funkcí.
+
+V této lekci se zaměříme na:
+
+* [Co je serverless?](../../../../../2-farm/lessons/5-migrate-application-to-the-cloud)
+* [Vytvoření serverless aplikace](../../../../../2-farm/lessons/5-migrate-application-to-the-cloud)
+* [Vytvoření triggeru události IoT Hubu](../../../../../2-farm/lessons/5-migrate-application-to-the-cloud)
+* [Odesílání požadavků na přímé metody ze serverless kódu](../../../../../2-farm/lessons/5-migrate-application-to-the-cloud)
+* [Nasazení serverless kódu do cloudu](../../../../../2-farm/lessons/5-migrate-application-to-the-cloud)
+
+## Co je serverless?
+
+Serverless, nebo serverless computing, zahrnuje vytváření malých bloků kódu, které se spouštějí v cloudu v reakci na různé typy událostí. Když k události dojde, váš kód se spustí a předají se mu data o této události. Tyto události mohou pocházet z různých zdrojů, včetně webových požadavků, zpráv vložených do fronty, změn dat v databázi nebo zpráv odeslaných IoT zařízeními do IoT služby.
+
+
+
+> 💁 Pokud jste někdy používali databázové triggery, můžete si to představit jako něco podobného – kód se spouští na základě události, například vložení řádku.
+
+
+
+Váš kód se spouští pouze tehdy, když dojde k události, jinak není aktivní. Událost nastane, váš kód se načte a spustí. To činí serverless velmi škálovatelným – pokud dojde k mnoha událostem současně, poskytovatel cloudu může spustit vaši funkci tolikrát, kolikrát je potřeba, a to na různých serverech, které má k dispozici. Nevýhodou je, že pokud potřebujete sdílet informace mezi událostmi, musíte je uložit například do databáze, místo abyste je uchovávali v paměti.
+
+Váš kód je napsán jako funkce, která přijímá podrobnosti o události jako parametr. Pro psaní těchto serverless funkcí můžete použít širokou škálu programovacích jazyků.
+
+> 🎓 Serverless se také označuje jako Functions as a Service (FaaS), protože každý trigger události je implementován jako funkce v kódu.
+
+Navzdory názvu serverless ve skutečnosti servery používá. Název vychází z toho, že jako vývojář se nemusíte starat o servery potřebné ke spuštění vašeho kódu, zajímá vás pouze to, že váš kód je spuštěn v reakci na událost. Poskytovatel cloudu má serverless *runtime*, který spravuje přidělování serverů, síť, úložiště, CPU, paměť a vše ostatní potřebné ke spuštění vašeho kódu. Tento model znamená, že neplatíte za server, ale za dobu, po kterou váš kód běží, a za množství použité paměti.
+
+> 💰 Serverless je jedním z nejlevnějších způsobů, jak spouštět kód v cloudu. Například v době psaní tohoto textu jeden poskytovatel cloudu umožňuje všem vašim serverless funkcím provést dohromady 1 000 000 spuštění měsíčně zdarma, a poté účtuje 0,20 USD za každých 1 000 000 spuštění. Když váš kód neběží, neplatíte.
+
+Pro IoT vývojáře je serverless model ideální. Můžete napsat funkci, která se spustí v reakci na zprávy odeslané z jakéhokoli IoT zařízení připojeného k vaší cloudové IoT službě. Váš kód zpracuje všechny odeslané zprávy, ale bude spuštěn pouze tehdy, když to bude potřeba.
+
+✅ Podívejte se zpět na kód, který jste napsali jako serverový kód naslouchající zprávám přes MQTT. Jak by mohl tento kód běžet v cloudu pomocí serverless? Jak si myslíte, že by se kód mohl změnit, aby podporoval serverless computing?
+
+> 💁 Serverless model se rozšiřuje i na další cloudové služby kromě spouštění kódu. Například serverless databáze jsou dostupné v cloudu s cenovým modelem, kde platíte za každý požadavek na databázi, například dotaz nebo vložení, obvykle na základě toho, kolik práce je potřeba k obsloužení požadavku. Například jednoduchý výběr jednoho řádku podle primárního klíče bude stát méně než složitá operace spojující mnoho tabulek a vracející tisíce řádků.
+
+## Vytvoření serverless aplikace
+
+Serverless služba od Microsoftu se nazývá Azure Functions.
+
+
+
+Krátké video níže poskytuje přehled Azure Functions.
+
+[](https://www.youtube.com/watch?v=8-jz5f_JyEQ)
+
+> 🎥 Klikněte na obrázek výše pro zhlédnutí videa.
+
+✅ Udělejte si chvíli na průzkum a přečtěte si přehled Azure Functions v [dokumentaci Microsoft Azure Functions](https://docs.microsoft.com/azure/azure-functions/functions-overview?WT.mc_id=academic-17441-jabenn).
+
+Pro psaní Azure Functions začínáte s aplikací Azure Functions v jazyce dle vašeho výběru. Azure Functions podporuje Python, JavaScript, TypeScript, C#, F#, Java a Powershell. V této lekci se naučíte, jak napsat aplikaci Azure Functions v Pythonu.
+
+> 💁 Azure Functions také podporuje vlastní handlery, takže své funkce můžete psát v jakémkoli jazyce, který podporuje HTTP požadavky, včetně starších jazyků, jako je COBOL.
+
+Aplikace funkcí se skládají z jednoho nebo více *triggerů* – funkcí, které reagují na události. Můžete mít více triggerů v jedné aplikaci funkcí, všechny sdílející společnou konfiguraci. Například v konfiguračním souboru vaší aplikace funkcí můžete mít připojovací údaje k IoT Hubu a všechny funkce v aplikaci mohou tyto údaje použít k připojení a naslouchání událostem.
+
+### Úkol – instalace nástrojů Azure Functions
+
+> V době psaní tohoto textu nástroje pro kódování Azure Functions nejsou plně funkční na Apple Silicon s Python projekty. Budete potřebovat Mac s procesorem Intel, Windows PC nebo Linux PC.
+
+Jednou z výhod Azure Functions je, že je můžete spouštět lokálně. Stejný runtime, který se používá v cloudu, lze spustit na vašem počítači, což vám umožní psát kód, který reaguje na IoT zprávy, a spouštět ho lokálně. Dokonce můžete ladit svůj kód při zpracování událostí. Jakmile budete s kódem spokojeni, můžete ho nasadit do cloudu.
+
+Nástroje Azure Functions jsou dostupné jako CLI, známé jako Azure Functions Core Tools.
+
+1. Nainstalujte Azure Functions Core Tools podle pokynů v [dokumentaci Azure Functions Core Tools](https://docs.microsoft.com/azure/azure-functions/functions-run-local?WT.mc_id=academic-17441-jabenn).
+
+1. Nainstalujte rozšíření Azure Functions pro VS Code. Toto rozšíření poskytuje podporu pro vytváření, ladění a nasazování Azure Functions. Podívejte se na [dokumentaci rozšíření Azure Functions](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=ms-azuretools.vscode-azurefunctions) pro pokyny k instalaci tohoto rozšíření ve VS Code.
+
+Když nasadíte svou aplikaci Azure Functions do cloudu, potřebuje malé množství cloudového úložiště pro ukládání věcí, jako jsou aplikační soubory a logy. Když spouštíte svou aplikaci funkcí lokálně, stále potřebujete připojení k cloudovému úložišti, ale místo skutečného cloudového úložiště můžete použít emulátor úložiště nazvaný [Azurite](https://github.com/Azure/Azurite). Tento emulátor běží lokálně, ale chová se jako cloudové úložiště.
+
+> 🎓 V Azure je úložiště, které Azure Functions používá, Azure Storage Account. Tyto účty mohou ukládat soubory, blob objekty, data v tabulkách nebo data ve frontách. Jeden storage account můžete sdílet mezi mnoha aplikacemi, například aplikací funkcí a webovou aplikací.
+
+1. Azurite je aplikace v Node.js, takže budete muset nainstalovat Node.js. Stáhněte si ho a nainstalujte podle pokynů na [webu Node.js](https://nodejs.org/). Pokud používáte Mac, můžete ho také nainstalovat pomocí [Homebrew](https://formulae.brew.sh/formula/node).
+
+1. Nainstalujte Azurite pomocí následujícího příkazu (`npm` je nástroj, který se nainstaluje spolu s Node.js):
+
+ ```sh
+ npm install -g azurite
+ ```
+
+1. Vytvořte složku nazvanou `azurite` pro ukládání dat Azurite:
+
+ ```sh
+ mkdir azurite
+ ```
+
+1. Spusťte Azurite a předejte mu tuto novou složku:
+
+ ```sh
+ azurite --location azurite
+ ```
+
+ Emulátor úložiště Azurite se spustí a bude připraven k připojení lokálního runtime Functions.
+
+ ```output
+ ➜ ~ azurite --location azurite
+ Azurite Blob service is starting at http://127.0.0.1:10000
+ Azurite Blob service is successfully listening at http://127.0.0.1:10000
+ Azurite Queue service is starting at http://127.0.0.1:10001
+ Azurite Queue service is successfully listening at http://127.0.0.1:10001
+ Azurite Table service is starting at http://127.0.0.1:10002
+ Azurite Table service is successfully listening at http://127.0.0.1:10002
+ ```
+
+### Úkol – vytvoření projektu Azure Functions
+
+CLI Azure Functions lze použít k vytvoření nové aplikace funkcí.
+
+1. Vytvořte složku pro svou aplikaci funkcí a přejděte do ní. Nazvěte ji `soil-moisture-trigger`:
+
+ ```sh
+ mkdir soil-moisture-trigger
+ cd soil-moisture-trigger
+ ```
+
+1. Vytvořte v této složce virtuální prostředí Python:
+
+ ```sh
+ python3 -m venv .venv
+ ```
+
+1. Aktivujte virtuální prostředí:
+
+ * Na Windows:
+ * Pokud používáte Command Prompt nebo Command Prompt přes Windows Terminal, spusťte:
+
+ ```cmd
+ .venv\Scripts\activate.bat
+ ```
+
+ * Pokud používáte PowerShell, spusťte:
+
+ ```powershell
+ .\.venv\Scripts\Activate.ps1
+ ```
+
+ * Na macOS nebo Linuxu spusťte:
+
+ ```cmd
+ source ./.venv/bin/activate
+ ```
+
+ > 💁 Tyto příkazy by měly být spuštěny ze stejného umístění, kde jste spustili příkaz pro vytvoření virtuálního prostředí. Nikdy nebudete muset přecházet do složky `.venv`, vždy byste měli spouštět příkaz pro aktivaci a jakékoli příkazy pro instalaci balíčků nebo spuštění kódu z umístění, kde jste vytvořili virtuální prostředí.
+
+1. Spusťte následující příkaz pro vytvoření aplikace funkcí v této složce:
+
+ ```sh
+ func init --worker-runtime python soil-moisture-trigger
+ ```
+
+ Tím se v aktuální složce vytvoří tři soubory:
+
+ * `host.json` – tento JSON dokument obsahuje nastavení vaší aplikace funkcí. Tato nastavení nebudete muset měnit.
+ * `local.settings.json` – tento JSON dokument obsahuje nastavení, která vaše aplikace používá při lokálním spuštění, například připojovací řetězce k IoT Hubu. Tato nastavení jsou pouze lokální a neměla by být přidána do systému správy verzí. Když aplikaci nasadíte do cloudu, tato nastavení se nenasadí, místo toho se vaše nastavení načtou z aplikačních nastavení. To bude pokryto později v této lekci.
+ * `requirements.txt` – to je [soubor požadavků Pip](https://pip.pypa.io/en/stable/user_guide/#requirements-files), který obsahuje balíčky Pip potřebné pro běh vaší aplikace funkcí.
+
+1. Soubor `local.settings.json` má nastavení pro storage account, který aplikace funkcí použije. Toto nastavení je ve výchozím stavu prázdné, takže je třeba ho nastavit. Pro připojení k lokálnímu emulátoru úložiště Azurite nastavte tuto hodnotu na následující:
+
+ ```json
+ "AzureWebJobsStorage": "UseDevelopmentStorage=true",
+ ```
+
+1. Nainstalujte potřebné balíčky Pip pomocí souboru požadavků:
+
+ ```sh
+ pip install -r requirements.txt
+ ```
+
+ > 💁 Požadované balíčky Pip musí být v tomto souboru, aby runtime při nasazení aplikace funkcí do cloudu mohl zajistit instalaci správných balíčků.
+
+1. Pro otestování, zda vše funguje správně, můžete spustit runtime Functions. Spusťte následující příkaz:
+
+ ```sh
+ func start
+ ```
+
+ Uvidíte, že runtime se spustí a oznámí, že nenašel žádné job funkce (triggery).
+
+ ```output
+ (.venv) ➜ soil-moisture-trigger func start
+ Found Python version 3.9.1 (python3).
+
+ Azure Functions Core Tools
+ Core Tools Version: 3.0.3442 Commit hash: 6bfab24b2743f8421475d996402c398d2fe4a9e0 (64-bit)
+ Function Runtime Version: 3.0.15417.0
+
+ [2021-05-05T01:24:46.795Z] No job functions found.
+ ```
+> ⚠️ Pokud obdržíte oznámení o firewallu, udělte přístup, protože aplikace `func` potřebuje mít možnost číst a zapisovat do vaší sítě.
+> ⚠️ Pokud používáte macOS, mohou se v výstupu objevit varování:
+>
+> ```output
+ > (.venv) ➜ soil-moisture-trigger func start
+ > Found Python version 3.9.1 (python3).
+ >
+ > Azure Functions Core Tools
+ > Core Tools Version: 3.0.3442 Commit hash: 6bfab24b2743f8421475d996402c398d2fe4a9e0 (64-bit)
+ > Function Runtime Version: 3.0.15417.0
+ >
+ > [2021-06-16T08:18:28.315Z] Cannot create directory for shared memory usage: /dev/shm/AzureFunctions
+ > [2021-06-16T08:18:28.316Z] System.IO.FileSystem: Access to the path '/dev/shm/AzureFunctions' is denied. Operation not permitted.
+ > [2021-06-16T08:18:30.361Z] No job functions found.
+ > ```
+>
+> Tato varování můžete ignorovat, pokud aplikace Functions správně startuje a zobrazuje běžící funkce. Jak je uvedeno v [této otázce na Microsoft Docs Q&A](https://docs.microsoft.com/answers/questions/396617/azure-functions-core-tools-error-osx-devshmazurefu.html?WT.mc_id=academic-17441-jabenn), lze je ignorovat.
+
+1. Zastavte aplikaci Functions stisknutím `ctrl+c`.
+
+1. Otevřete aktuální složku ve VS Code, buď otevřením VS Code a následným otevřením této složky, nebo spuštěním následujícího příkazu:
+
+ ```sh
+ code .
+ ```
+
+ VS Code rozpozná váš projekt Functions a zobrazí oznámení:
+
+ ```output
+ Detected an Azure Functions Project in folder "soil-moisture-trigger" that may have been created outside of
+ VS Code. Initialize for optimal use with VS Code?
+ ```
+
+ 
+
+ Vyberte **Ano** z tohoto oznámení.
+
+1. Ujistěte se, že virtuální prostředí Python běží v terminálu VS Code. Pokud je to nutné, ukončete ho a znovu spusťte.
+
+## Vytvoření triggeru událostí IoT Hubu
+
+Aplikace Functions je obal vašeho serverless kódu. Pro reakci na události IoT Hubu můžete do této aplikace přidat trigger IoT Hubu. Tento trigger se musí připojit k proudu zpráv, které jsou odesílány do IoT Hubu, a na ně reagovat. Aby bylo možné získat tento proud zpráv, váš trigger se musí připojit k *event hub kompatibilnímu endpointu* IoT Hubu.
+
+IoT Hub je založen na jiné službě Azure nazvané Azure Event Hubs. Event Hubs je služba, která umožňuje odesílat a přijímat zprávy, IoT Hub tuto funkci rozšiřuje o funkce pro IoT zařízení. Způsob, jakým se připojujete k čtení zpráv z IoT Hubu, je stejný jako při použití Event Hubs.
+
+✅ Udělejte si průzkum: Přečtěte si přehled Event Hubs v [dokumentaci Azure Event Hubs](https://docs.microsoft.com/azure/event-hubs/event-hubs-about?WT.mc_id=academic-17441-jabenn). Jak se základní funkce porovnávají s IoT Hubem?
+
+Aby se IoT zařízení mohlo připojit k IoT Hubu, musí použít tajný klíč, který zajistí, že se mohou připojit pouze povolená zařízení. Totéž platí při připojení ke čtení zpráv – váš kód bude potřebovat připojovací řetězec, který obsahuje tajný klíč spolu s detaily IoT Hubu.
+
+> 💁 Výchozí připojovací řetězec, který získáte, má oprávnění **iothubowner**, což dává jakémukoli kódu, který ho používá, plná oprávnění na IoT Hubu. Ideálně byste se měli připojit s nejnižší úrovní oprávnění, která je potřebná. Toto bude pokryto v další lekci.
+
+Jakmile se váš trigger připojí, kód uvnitř funkce bude volán pro každou zprávu odeslanou do IoT Hubu, bez ohledu na to, které zařízení ji odeslalo. Trigger bude předávat zprávu jako parametr.
+
+### Úkol - získání připojovacího řetězce event hub kompatibilního endpointu
+
+1. Z terminálu VS Code spusťte následující příkaz pro získání připojovacího řetězce pro event hub kompatibilní endpoint IoT Hubu:
+
+ ```sh
+ az iot hub connection-string show --default-eventhub \
+ --output table \
+ --hub-name
+ ```
+
+ Nahraďte `` názvem, který jste použili pro váš IoT Hub.
+
+1. Ve VS Code otevřete soubor `local.settings.json`. Přidejte následující hodnotu do sekce `Values`:
+
+ ```json
+ "IOT_HUB_CONNECTION_STRING": ""
+ ```
+
+ Nahraďte `` hodnotou z předchozího kroku. Budete muset přidat čárku za předchozí řádek, aby byl JSON platný.
+
+### Úkol - vytvoření triggeru událostí
+
+Nyní jste připraveni vytvořit trigger událostí.
+
+1. Z terminálu VS Code spusťte následující příkaz ze složky `soil-moisture-trigger`:
+
+ ```sh
+ func new --name iot-hub-trigger --template "Azure Event Hub trigger"
+ ```
+
+ Tento příkaz vytvoří novou funkci nazvanou `iot-hub-trigger`. Trigger se připojí k event hub kompatibilnímu endpointu IoT Hubu, takže můžete použít trigger event hubu. Neexistuje specifický trigger IoT Hubu.
+
+Tím se vytvoří složka uvnitř složky `soil-moisture-trigger` nazvaná `iot-hub-trigger`, která obsahuje tuto funkci. Tato složka bude obsahovat následující soubory:
+
+* `__init__.py` - Python soubor, který obsahuje trigger, používající standardní konvenci názvů Python souborů k tomu, aby se tato složka stala Python modulem.
+
+ Tento soubor bude obsahovat následující kód:
+
+ ```python
+ import logging
+
+ import azure.functions as func
+
+
+ def main(event: func.EventHubEvent):
+ logging.info('Python EventHub trigger processed an event: %s',
+ event.get_body().decode('utf-8'))
+ ```
+
+ Jádrem triggeru je funkce `main`. Tato funkce je volána s událostmi z IoT Hubu. Funkce má parametr nazvaný `event`, který obsahuje `EventHubEvent`. Pokaždé, když je zpráva odeslána do IoT Hubu, tato funkce je volána a předává tuto zprávu jako `event` spolu s vlastnostmi, které odpovídají anotacím, které jste viděli v předchozí lekci.
+
+ Jádrem této funkce je logování události.
+
+* `function.json` - obsahuje konfiguraci pro trigger. Hlavní konfigurace je v sekci nazvané `bindings`. Binding je termín pro spojení mezi Azure Functions a jinými službami Azure. Tato funkce má vstupní binding k event hubu – připojuje se k event hubu a přijímá data.
+
+ > 💁 Můžete mít také výstupní bindingy, takže výstup funkce je odeslán do jiné služby. Například můžete přidat výstupní binding do databáze a vrátit událost IoT Hubu z funkce, a ta bude automaticky vložena do databáze.
+
+ ✅ Udělejte si průzkum: Přečtěte si o bindingech v [dokumentaci konceptů triggerů a bindingů Azure Functions](https://docs.microsoft.com/azure/azure-functions/functions-triggers-bindings?WT.mc_id=academic-17441-jabenn&tabs=python).
+
+ Sekce `bindings` obsahuje konfiguraci pro binding. Zajímavé hodnoty jsou:
+
+ * `"type": "eventHubTrigger"` - říká funkci, že musí poslouchat události z Event Hubu
+ * `"name": "events"` - název parametru pro události Event Hubu. Odpovídá názvu parametru ve funkci `main` v Python kódu.
+ * `"direction": "in"` - jedná se o vstupní binding, data z event hubu přicházejí do funkce
+ * `"connection": ""` - definuje název nastavení, ze kterého se čte připojovací řetězec. Při lokálním běhu se toto nastavení čte ze souboru `local.settings.json`.
+
+ > 💁 Připojovací řetězec nemůže být uložen v souboru `function.json`, musí být čten z nastavení. To je proto, aby se zabránilo náhodnému zveřejnění připojovacího řetězce.
+
+1. Kvůli [chybě v šabloně Azure Functions](https://github.com/Azure/azure-functions-templates/issues/1250) má `function.json` nesprávnou hodnotu pro pole `cardinality`. Aktualizujte toto pole z `many` na `one`:
+
+ ```json
+ "cardinality": "one",
+ ```
+
+1. Aktualizujte hodnotu `"connection"` v souboru `function.json`, aby odkazovala na novou hodnotu, kterou jste přidali do souboru `local.settings.json`:
+
+ ```json
+ "connection": "IOT_HUB_CONNECTION_STRING",
+ ```
+
+ > 💁 Pamatujte - toto musí odkazovat na nastavení, ne obsahovat skutečný připojovací řetězec.
+
+1. Připojovací řetězec obsahuje hodnotu `eventHubName`, takže hodnota pro toto pole v souboru `function.json` musí být vymazána. Aktualizujte tuto hodnotu na prázdný řetězec:
+
+ ```json
+ "eventHubName": "",
+ ```
+
+### Úkol - spuštění triggeru událostí
+
+1. Ujistěte se, že nemonitorujete události IoT Hubu. Pokud je tento monitor spuštěn současně s aplikací Functions, aplikace Functions se nebude moci připojit a spotřebovávat události.
+
+ > 💁 Více aplikací se může připojit k endpointům IoT Hubu pomocí různých *consumer groups*. Tyto budou pokryty v pozdější lekci.
+
+1. Pro spuštění aplikace Functions spusťte následující příkaz z terminálu VS Code:
+
+ ```sh
+ func start
+ ```
+
+ Aplikace Functions se spustí a objeví funkci `iot-hub-trigger`. Poté zpracuje všechny události, které byly odeslány do IoT Hubu za poslední den.
+
+ ```output
+ (.venv) ➜ soil-moisture-trigger func start
+ Found Python version 3.9.1 (python3).
+
+ Azure Functions Core Tools
+ Core Tools Version: 3.0.3442 Commit hash: 6bfab24b2743f8421475d996402c398d2fe4a9e0 (64-bit)
+ Function Runtime Version: 3.0.15417.0
+
+ Functions:
+
+ iot-hub-trigger: eventHubTrigger
+
+ For detailed output, run func with --verbose flag.
+ [2021-05-05T02:44:07.517Z] Worker process started and initialized.
+ [2021-05-05T02:44:09.202Z] Executing 'Functions.iot-hub-trigger' (Reason='(null)', Id=802803a5-eae9-4401-a1f4-176631456ce4)
+ [2021-05-05T02:44:09.205Z] Trigger Details: PartitionId: 0, Offset: 1011240-1011632, EnqueueTimeUtc: 2021-05-04T19:04:04.2030000Z-2021-05-04T19:04:04.3900000Z, SequenceNumber: 2546-2547, Count: 2
+ [2021-05-05T02:44:09.352Z] Python EventHub trigger processed an event: {"soil_moisture":628}
+ [2021-05-05T02:44:09.354Z] Python EventHub trigger processed an event: {"soil_moisture":624}
+ [2021-05-05T02:44:09.395Z] Executed 'Functions.iot-hub-trigger' (Succeeded, Id=802803a5-eae9-4401-a1f4-176631456ce4, Duration=245ms)
+ ```
+
+ Každé volání funkce bude obklopeno blokem `Executing 'Functions.iot-hub-trigger'`/`Executed 'Functions.iot-hub-trigger'` ve výstupu, takže uvidíte, kolik zpráv bylo zpracováno při každém volání funkce.
+
+1. Ujistěte se, že vaše IoT zařízení běží. Uvidíte nové zprávy o vlhkosti půdy objevující se v aplikaci Functions.
+
+1. Zastavte a znovu spusťte aplikaci Functions. Uvidíte, že již nebude zpracovávat předchozí zprávy, ale pouze nové zprávy.
+
+> 💁 VS Code také podporuje ladění vašich funkcí. Můžete nastavit break pointy kliknutím na okraj u začátku každého řádku kódu, nebo umístěním kurzoru na řádek kódu a výběrem *Run -> Toggle breakpoint*, nebo stisknutím `F9`. Můžete spustit debugger výběrem *Run -> Start debugging*, stisknutím `F5`, nebo výběrem panelu *Run and debug* a kliknutím na tlačítko **Start debugging**. Tímto způsobem můžete vidět detaily událostí, které jsou zpracovávány.
+
+#### Řešení problémů
+
+* Pokud obdržíte následující chybu:
+
+ ```output
+ The listener for function 'Functions.iot-hub-trigger' was unable to start. Microsoft.WindowsAzure.Storage: Connection refused. System.Net.Http: Connection refused. System.Private.CoreLib: Connection refused.
+ ```
+
+ Zkontrolujte, zda běží Azurite a zda jste nastavili `AzureWebJobsStorage` v souboru `local.settings.json` na `UseDevelopmentStorage=true`.
+
+* Pokud obdržíte následující chybu:
+
+ ```output
+ System.Private.CoreLib: Exception while executing function: Functions.iot-hub-trigger. System.Private.CoreLib: Result: Failure Exception: AttributeError: 'list' object has no attribute 'get_body'
+ ```
+
+ Zkontrolujte, zda jste nastavili `cardinality` v souboru `function.json` na `one`.
+
+* Pokud obdržíte následující chybu:
+
+ ```output
+ Azure.Messaging.EventHubs: The path to an Event Hub may be specified as part of the connection string or as a separate value, but not both. Please verify that your connection string does not have the `EntityPath` token if you are passing an explicit Event Hub name. (Parameter 'connectionString').
+ ```
+
+ Zkontrolujte, zda jste nastavili `eventHubName` v souboru `function.json` na prázdný řetězec.
+
+## Odesílání požadavků na přímé metody z serverless kódu
+
+Doposud vaše aplikace Functions poslouchá zprávy z IoT Hubu pomocí endpointu kompatibilního s Event Hubem. Nyní potřebujete odesílat příkazy do IoT zařízení. To se provádí pomocí jiného připojení k IoT Hubu přes *Registry Manager*. Registry Manager je nástroj, který vám umožňuje vidět, jaká zařízení jsou registrována v IoT Hubu, a komunikovat s těmito zařízeními odesíláním zpráv z cloudu do zařízení, požadavků na přímé metody nebo aktualizací dvojčete zařízení. Můžete jej také použít k registraci, aktualizaci nebo odstranění IoT zařízení z IoT Hubu.
+
+Pro připojení k Registry Manageru potřebujete připojovací řetězec.
+
+### Úkol - získání připojovacího řetězce Registry Manageru
+
+1. Pro získání připojovacího řetězce spusťte následující příkaz:
+
+ ```sh
+ az iot hub connection-string show --policy-name service \
+ --output table \
+ --hub-name
+ ```
+
+ Nahraďte `` názvem, který jste použili pro váš IoT Hub.
+
+ Připojovací řetězec je požadován pro politiku *ServiceConnect* pomocí parametru `--policy-name service`. Když požadujete připojovací řetězec, můžete specifikovat, jaká oprávnění tento připojovací řetězec umožní. Politika ServiceConnect umožňuje vašemu kódu připojit se a odesílat zprávy do IoT zařízení.
+
+ ✅ Udělejte si průzkum: Přečtěte si o různých politikách v [dokumentaci oprávnění IoT Hubu](https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security#iot-hub-permissions?WT.mc_id=academic-17441-jabenn)
+
+1. Ve VS Code otevřete soubor `local.settings.json`. Přidejte následující hodnotu do sekce `Values`:
+
+ ```json
+ "REGISTRY_MANAGER_CONNECTION_STRING": ""
+ ```
+
+ Nahraďte `` hodnotou z předchozího kroku. Budete muset přidat čárku za předchozí řádek, aby byl JSON platný.
+
+### Úkol - odeslání požadavku na přímou metodu do zařízení
+
+1. SDK pro Registry Manager je dostupné přes balíček Pip. Přidejte následující řádek do souboru `requirements.txt`, abyste přidali závislost na tomto balíčku:
+
+ ```sh
+ azure-iot-hub
+ ```
+
+1. Ujistěte se, že terminál VS Code má aktivované virtuální prostředí, a spusťte následující příkaz pro instalaci balíčků Pip:
+
+ ```sh
+ pip install -r requirements.txt
+ ```
+
+1. Přidejte následující importy do souboru `__init__.py`:
+
+ ```python
+ import json
+ import os
+ from azure.iot.hub import IoTHubRegistryManager
+ from azure.iot.hub.models import CloudToDeviceMethod
+ ```
+
+ Tyto importy zahrnují některé systémové knihovny, stejně jako knihovny pro interakci s Registry Managerem a odesílání požadavků na přímé metody.
+
+1. Odstraňte kód uvnitř metody `main`, ale ponechte samotnou metodu.
+
+1. Do metody `main` přidejte následující kód:
+
+ ```python
+ body = json.loads(event.get_body().decode('utf-8'))
+ device_id = event.iothub_metadata['connection-device-id']
+
+ logging.info(f'Received message: {body} from {device_id}')
+ ```
+
+ Tento kód extrahuje tělo události, které obsahuje JSON zprávu odeslanou IoT zařízením.
+
+ Poté získá ID zařízení z anotací předaných se zprávou. Tělo události obsahuje zprávu odeslanou jako telemetrii, slovník `iothub_metadata` obsahuje vlastnosti nastavené IoT Hubem, jako je ID zařízení odesílatele a čas, kdy byla zpráva odeslána.
+
+ Tyto informace jsou poté zalogovány. Toto logování uvidíte v terminálu, když spustíte aplikaci Functions lokálně.
+
+1. Pod tento kód přidejte následující:
+
+ ```python
+ soil_moisture = body['soil_moisture']
+
+ if soil_moisture > 450:
+ direct_method = CloudToDeviceMethod(method_name='relay_on', payload='{}')
+ else:
+ direct_method = CloudToDeviceMethod(method_name='relay_off', payload='{}')
+ ```
+
+ Tento kód získá vlhkost půdy ze zprávy. Poté zkontroluje vlhkost půdy a v závislosti na hodnotě vytvoří pomocnou třídu pro požadavek na přímou metodu `relay_on` nebo `relay_off`. Požadavek na metodu nepotřebuje payload, takže je odeslán prázdný JSON dokument.
+
+1. Pod tento kód přidejte následující:
+
+ ```python
+ logging.info(f'Sending direct method request for {direct_method.method_name} for device {device_id}')
+
+ registry_manager_connection_string = os.environ['REGISTRY_MANAGER_CONNECTION_STRING']
+ registry_manager = IoTHubRegistryManager(registry_manager_connection_string)
+ ```
+Tento kód načte `REGISTRY_MANAGER_CONNECTION_STRING` ze souboru `local.settings.json`. Hodnoty v tomto souboru jsou zpřístupněny jako proměnné prostředí, které lze přečíst pomocí funkce `os.environ`, což je funkce, která vrací slovník všech proměnných prostředí.
+
+> 💁 Když je tento kód nasazen do cloudu, hodnoty v souboru `local.settings.json` budou nastaveny jako *Application Settings* a lze je přečíst z proměnných prostředí.
+
+Kód poté vytvoří instanci pomocné třídy Registry Manager pomocí připojovacího řetězce.
+
+1. Pod toto přidejte následující kód:
+
+ ```python
+ registry_manager.invoke_device_method(device_id, direct_method)
+
+ logging.info('Direct method request sent!')
+ ```
+
+ Tento kód říká správci registru, aby odeslal požadavek na přímou metodu zařízení, které odeslalo telemetrii.
+
+ > 💁 V dřívějších verzích aplikace, které jste vytvořili v předchozích lekcích pomocí MQTT, byly příkazy pro ovládání relé odesílány všem zařízením. Kód předpokládal, že budete mít pouze jedno zařízení. Tato verze kódu odesílá požadavek na metodu pouze jednomu zařízení, takže by fungovala, i kdybyste měli více sad senzorů vlhkosti a relé, přičemž správný požadavek na přímou metodu by byl odeslán správnému zařízení.
+
+1. Spusťte aplikaci Functions a ujistěte se, že vaše IoT zařízení odesílá data. Uvidíte, jak jsou zprávy zpracovávány a požadavky na přímé metody odesílány. Pohybujte senzorem vlhkosti půdy dovnitř a ven ze země, abyste viděli, jak se hodnoty mění a relé se zapíná a vypíná.
+
+> 💁 Tento kód najdete ve složce [code/functions](../../../../../2-farm/lessons/5-migrate-application-to-the-cloud/code/functions).
+
+## Nasazení vašeho serverless kódu do cloudu
+
+Váš kód nyní funguje lokálně, takže dalším krokem je nasazení aplikace Functions App do cloudu.
+
+### Úkol - vytvoření cloudových prostředků
+
+Vaše aplikace Functions musí být nasazena do prostředku Functions App v Azure, který se nachází ve skupině prostředků, kterou jste vytvořili pro váš IoT Hub. Budete také potřebovat vytvořit Účet úložiště v Azure, který nahradí emulovaný účet, který máte spuštěný lokálně.
+
+1. Spusťte následující příkaz pro vytvoření účtu úložiště:
+
+ ```sh
+ az storage account create --resource-group soil-moisture-sensor \
+ --sku Standard_LRS \
+ --name
+ ```
+
+ Nahraďte `` názvem pro váš účet úložiště. Tento název musí být globálně jedinečný, protože tvoří část URL používané pro přístup k účtu úložiště. Pro tento název můžete použít pouze malá písmena a čísla, žádné jiné znaky, a je omezen na 24 znaků. Použijte například `sms` a přidejte na konec jedinečný identifikátor, například náhodná slova nebo vaše jméno.
+
+ Parametr `--sku Standard_LRS` vybírá cenovou úroveň, přičemž vybírá nejlevnější účet pro obecné účely. Neexistuje bezplatná úroveň úložiště a platíte za to, co používáte. Náklady jsou relativně nízké, přičemž nejdražší úložiště stojí méně než 0,05 USD za měsíc na gigabajt uložených dat.
+
+ ✅ Přečtěte si více o cenách na [stránce s cenami Azure Storage Account](https://azure.microsoft.com/pricing/details/storage/?WT.mc_id=academic-17441-jabenn).
+
+1. Spusťte následující příkaz pro vytvoření aplikace Functions App:
+
+ ```sh
+ az functionapp create --resource-group soil-moisture-sensor \
+ --runtime python \
+ --functions-version 3 \
+ --os-type Linux \
+ --consumption-plan-location \
+ --storage-account \
+ --name
+ ```
+
+ Nahraďte `` umístěním, které jste použili při vytváření skupiny prostředků v předchozí lekci.
+
+ Nahraďte `` názvem účtu úložiště, který jste vytvořili v předchozím kroku.
+
+ Nahraďte `` jedinečným názvem pro vaši aplikaci Functions App. Tento název musí být globálně jedinečný, protože tvoří část URL, která může být použita pro přístup k aplikaci Functions App. Použijte například `soil-moisture-sensor-` a přidejte na konec jedinečný identifikátor, například náhodná slova nebo vaše jméno.
+
+ Parametr `--functions-version 3` nastavuje verzi Azure Functions, která se má použít. Verze 3 je nejnovější verzí.
+
+ Parametr `--os-type Linux` říká runtime Functions, aby používal Linux jako operační systém pro hostování těchto funkcí. Funkce mohou být hostovány na Linuxu nebo Windows, v závislosti na použitém programovacím jazyce. Python aplikace jsou podporovány pouze na Linuxu.
+
+### Úkol - nahrání nastavení aplikace
+
+Když jste vyvíjeli svou aplikaci Functions App, uložili jste některá nastavení do souboru `local.settings.json` pro připojovací řetězce k vašemu IoT Hubu. Tato nastavení je třeba zapsat do Application Settings ve vaší aplikaci Functions App v Azure, aby je mohl váš kód používat.
+
+> 🎓 Soubor `local.settings.json` je určen pouze pro nastavení lokálního vývoje a neměl by být zařazen do systému správy zdrojového kódu, jako je GitHub. Při nasazení do cloudu se používají Application Settings. Application Settings jsou páry klíč/hodnota hostované v cloudu a jsou čteny z proměnných prostředí buď ve vašem kódu, nebo runtime při připojování vašeho kódu k IoT Hubu.
+
+1. Spusťte následující příkaz pro nastavení hodnoty `IOT_HUB_CONNECTION_STRING` v Application Settings aplikace Functions App:
+
+ ```sh
+ az functionapp config appsettings set --resource-group soil-moisture-sensor \
+ --name \
+ --settings "IOT_HUB_CONNECTION_STRING="
+ ```
+
+ Nahraďte `` názvem, který jste použili pro vaši aplikaci Functions App.
+
+ Nahraďte `` hodnotou `IOT_HUB_CONNECTION_STRING` z vašeho souboru `local.settings.json`.
+
+1. Opakujte výše uvedený krok, ale nastavte hodnotu `REGISTRY_MANAGER_CONNECTION_STRING` na odpovídající hodnotu ze souboru `local.settings.json`.
+
+Když spustíte tyto příkazy, zobrazí se také seznam všech Application Settings pro aplikaci Functions App. Můžete jej použít k ověření, že vaše hodnoty jsou nastaveny správně.
+
+> 💁 Uvidíte hodnotu již nastavenou pro `AzureWebJobsStorage`. Ve vašem souboru `local.settings.json` byla tato hodnota nastavena na hodnotu pro použití lokálního emulátoru úložiště. Když jste vytvořili aplikaci Functions App, předali jste účet úložiště jako parametr a tato hodnota byla automaticky nastavena v tomto nastavení.
+
+### Úkol - nasazení vaší aplikace Functions App do cloudu
+
+Nyní, když je aplikace Functions App připravena, váš kód může být nasazen.
+
+1. Spusťte následující příkaz z terminálu VS Code pro publikování vaší aplikace Functions App:
+
+ ```sh
+ func azure functionapp publish
+ ```
+
+ Nahraďte `` názvem, který jste použili pro vaši aplikaci Functions App.
+
+Kód bude zabalen a odeslán do aplikace Functions App, kde bude nasazen a spuštěn. Na konzoli se zobrazí mnoho výstupů, které skončí potvrzením nasazení a seznamem nasazených funkcí. V tomto případě bude seznam obsahovat pouze trigger.
+
+```output
+Deployment successful.
+Remote build succeeded!
+Syncing triggers...
+Functions in soil-moisture-sensor:
+ iot-hub-trigger - [eventHubTrigger]
+```
+
+Ujistěte se, že vaše IoT zařízení běží. Změňte úroveň vlhkosti půdy úpravou vlhkosti nebo pohybem senzoru dovnitř a ven ze země. Uvidíte, jak se relé zapíná a vypíná podle změn vlhkosti půdy.
+
+---
+
+## 🚀 Výzva
+
+V předchozí lekci jste spravovali časování relé odhlášením z MQTT zpráv, zatímco bylo relé zapnuté, a na krátkou dobu poté, co bylo vypnuto. Tento způsob zde nelze použít - nemůžete odhlásit váš IoT Hub trigger.
+
+Přemýšlejte o různých způsobech, jak byste mohli tuto situaci řešit ve vaší aplikaci Functions App.
+
+## Kvíz po lekci
+
+[Kvíz po lekci](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/18)
+
+## Přehled a samostudium
+
+* Přečtěte si o serverless computingu na [stránce Serverless Computing na Wikipedii](https://wikipedia.org/wiki/Serverless_computing)
+* Přečtěte si o používání serverless v Azure včetně dalších příkladů na [blogovém příspěvku Azure Go serverless for your IoT needs](https://azure.microsoft.com/blog/go-serverless-for-your-iot-needs/?WT.mc_id=academic-17441-jabenn)
+* Zjistěte více o Azure Functions na [YouTube kanálu Azure Functions](https://www.youtube.com/c/AzureFunctions)
+
+## Zadání
+
+[Ruční ovládání relé](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/5-migrate-application-to-the-cloud/assignment.md b/translations/cs/2-farm/lessons/5-migrate-application-to-the-cloud/assignment.md
new file mode 100644
index 00000000..ab08b075
--- /dev/null
+++ b/translations/cs/2-farm/lessons/5-migrate-application-to-the-cloud/assignment.md
@@ -0,0 +1,70 @@
+
+# Přidání manuálního ovládání relé
+
+## Instrukce
+
+Serverless kód může být spuštěn mnoha různými způsoby, včetně HTTP požadavků. Můžete použít HTTP triggery k přidání manuálního ovládání vašeho relé, což umožní někomu zapnout nebo vypnout relé prostřednictvím webového požadavku.
+
+Pro tento úkol musíte přidat dva HTTP triggery do vaší Functions App, abyste mohli zapnout a vypnout relé, a využít to, co jste se naučili v této lekci, k odesílání příkazů zařízení.
+
+Několik tipů:
+
+* Můžete přidat HTTP trigger do vaší stávající Functions App pomocí následujícího příkazu:
+
+ ```sh
+ func new --name --template "HTTP trigger"
+ ```
+
+ Nahraďte `` názvem vašeho HTTP triggeru. Použijte například `relay_on` a `relay_off`.
+
+* HTTP triggery mohou mít řízení přístupu. Ve výchozím nastavení vyžadují, aby byl s URL předán specifický API klíč funkce, aby mohly běžet. Pro tento úkol můžete toto omezení odstranit, aby mohl funkci spustit kdokoli. K tomu aktualizujte nastavení `authLevel` v souboru `function.json` pro HTTP triggery na následující:
+
+ ```json
+ "authLevel": "anonymous"
+ ```
+
+ > 💁 Více o tomto řízení přístupu si můžete přečíst v [dokumentaci k přístupovým klíčům funkcí](https://docs.microsoft.com/azure/azure-functions/functions-bindings-http-webhook-trigger?WT.mc_id=academic-17441-jabenn#authorization-keys).
+
+* HTTP triggery ve výchozím nastavení podporují GET a POST požadavky. To znamená, že je můžete volat pomocí vašeho webového prohlížeče - webové prohlížeče provádějí GET požadavky.
+
+ Když spustíte svou Functions App lokálně, uvidíte URL triggeru:
+
+ ```output
+ Functions:
+
+ relay_off: [GET,POST] http://localhost:7071/api/relay_off
+
+ relay_on: [GET,POST] http://localhost:7071/api/relay_on
+
+ iot-hub-trigger: eventHubTrigger
+ ```
+
+ Vložte URL do svého prohlížeče a stiskněte `Enter`, nebo `Ctrl+klikněte` (`Cmd+klikněte` na macOS) na odkaz v terminálovém okně ve VS Code, abyste jej otevřeli ve výchozím prohlížeči. Tím spustíte trigger.
+
+ > 💁 Všimněte si, že URL obsahuje `/api` - HTTP triggery jsou ve výchozím nastavení v subdoméně `api`.
+
+* Když nasadíte Functions App, URL HTTP triggeru bude:
+
+ `https://.azurewebsites.net/api/`
+
+ Kde `` je název vaší Functions App a `` je název vašeho triggeru.
+
+## Hodnocení
+
+| Kritéria | Vynikající | Přiměřené | Potřebuje zlepšení |
+| -------- | ---------- | --------- | ------------------ |
+| Vytvoření HTTP triggerů | Vytvořeny 2 triggery pro zapnutí a vypnutí relé s vhodnými názvy | Vytvořen jeden trigger s vhodným názvem | Nebyl vytvořen žádný trigger |
+| Ovládání relé z HTTP triggerů | Oba triggery byly úspěšně připojeny k IoT Hub a správně ovládaly relé | Jeden trigger byl úspěšně připojen k IoT Hub a správně ovládal relé | Triggery nebyly připojeny k IoT Hub |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/6-keep-your-plant-secure/README.md b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/README.md
new file mode 100644
index 00000000..4fa14f65
--- /dev/null
+++ b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/README.md
@@ -0,0 +1,245 @@
+
+# Udržujte svou rostlinu v bezpečí
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+## Kvíz před přednáškou
+
+[Kvíz před přednáškou](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/19)
+
+## Úvod
+
+V posledních několika lekcích jste vytvořili IoT zařízení pro monitorování půdy a připojili ho ke cloudu. Ale co kdyby hackeři pracující pro konkurenčního farmáře získali kontrolu nad vašimi IoT zařízeními? Co kdyby posílali falešné údaje o vysoké vlhkosti půdy, takže by vaše rostliny nikdy nebyly zalévány, nebo zapnuli zavlažovací systém, aby běžel neustále, což by vedlo k přemokření rostlin a stálo vás malé jmění za vodu?
+
+V této lekci se naučíte, jak zabezpečit IoT zařízení. Jelikož se jedná o poslední lekci tohoto projektu, naučíte se také, jak vyčistit cloudové zdroje, čímž snížíte potenciální náklady.
+
+V této lekci se zaměříme na:
+
+* [Proč je potřeba zabezpečit IoT zařízení?](../../../../../2-farm/lessons/6-keep-your-plant-secure)
+* [Kryptografie](../../../../../2-farm/lessons/6-keep-your-plant-secure)
+* [Zabezpečení IoT zařízení](../../../../../2-farm/lessons/6-keep-your-plant-secure)
+* [Generování a použití certifikátu X.509](../../../../../2-farm/lessons/6-keep-your-plant-secure)
+
+> 🗑 Toto je poslední lekce tohoto projektu, takže po dokončení této lekce a úkolu nezapomeňte vyčistit své cloudové služby. Služby budete potřebovat k dokončení úkolu, takže se ujistěte, že ho nejprve dokončíte.
+>
+> Pokud potřebujete pokyny, podívejte se na [průvodce vyčištěním projektu](../../../clean-up.md).
+
+## Proč je potřeba zabezpečit IoT zařízení?
+
+Zabezpečení IoT zahrnuje zajištění, že pouze očekávaná zařízení mohou připojit se k vaší cloudové IoT službě a posílat jí telemetrii, a že pouze vaše cloudová služba může posílat příkazy vašim zařízením. IoT data mohou být také osobní, včetně lékařských nebo intimních údajů, takže celá vaše aplikace musí zohlednit bezpečnost, aby zabránila úniku těchto dat.
+
+Pokud vaše IoT aplikace není zabezpečená, existuje několik rizik:
+
+* Falešné zařízení by mohlo posílat nesprávná data, což by způsobilo, že vaše aplikace bude reagovat nesprávně. Například by mohlo posílat neustále vysoké hodnoty vlhkosti půdy, což by znamenalo, že váš zavlažovací systém se nikdy nezapne a vaše rostliny uschnou.
+* Neoprávnění uživatelé by mohli číst data z IoT zařízení, včetně osobních nebo kritických obchodních údajů.
+* Hackeři by mohli posílat příkazy k ovládání zařízení způsobem, který by mohl poškodit zařízení nebo připojený hardware.
+* Připojením k IoT zařízení by hackeři mohli získat přístup k dalším sítím a dostat se k soukromým systémům.
+* Zlomyslní uživatelé by mohli získat přístup k osobním údajům a použít je k vydírání.
+
+Toto jsou scénáře z reálného světa, které se dějí neustále. Některé příklady byly uvedeny v předchozích lekcích, ale zde jsou další:
+
+* V roce 2018 hackeři použili otevřený WiFi přístupový bod na termostatu akvária, aby získali přístup k síti kasina a ukradli data. [The Hacker News - Casino Gets Hacked Through Its Internet-Connected Fish Tank Thermometer](https://thehackernews.com/2018/04/iot-hacking-thermometer.html)
+* V roce 2016 Mirai Botnet spustil útok typu denial of service proti Dyn, poskytovateli internetových služeb, což způsobilo výpadky velké části internetu. Tento botnet použil malware k připojení k IoT zařízením, jako jsou DVR a kamery, které používaly výchozí uživatelská jména a hesla, a odtud spustil útok. [The Guardian - DDoS attack that disrupted internet was largest of its kind in history, experts say](https://www.theguardian.com/technology/2016/oct/26/ddos-attack-dyn-mirai-botnet)
+* Spiral Toys měl databázi uživatelů svých připojených hraček CloudPets veřejně dostupnou na internetu. [Troy Hunt - Data from connected CloudPets teddy bears leaked and ransomed, exposing kids' voice messages](https://www.troyhunt.com/data-from-connected-cloudpets-teddy-bears-leaked-and-ransomed-exposing-kids-voice-messages/).
+* Strava označovala běžce, které jste míjeli, a ukazovala jejich trasy, což umožnilo cizím lidem efektivně zjistit, kde bydlíte. [Kim Komndo - Fitness app could lead a stranger right to your home — change this setting](https://www.komando.com/security-privacy/strava-fitness-app-privacy/755349/).
+
+✅ Udělejte si průzkum: Vyhledejte další příklady hacků IoT a úniků dat IoT, zejména u osobních předmětů, jako jsou internetově připojené zubní kartáčky nebo váhy. Zamyslete se nad dopadem těchto hacků na oběti nebo zákazníky.
+
+> 💁 Zabezpečení je obrovské téma a tato lekce se dotkne pouze některých základů týkajících se připojení vašeho zařízení ke cloudu. Mezi další témata, která nebudou pokryta, patří monitorování změn dat během přenosu, přímé hackování zařízení nebo změny konfigurací zařízení. Hacking IoT je takovou hrozbou, že byly vyvinuty nástroje jako [Azure Defender for IoT](https://azure.microsoft.com/services/azure-defender-for-iot/?WT.mc_id=academic-17441-jabenn). Tyto nástroje jsou podobné antivirovým a bezpečnostním nástrojům, které můžete mít na svém počítači, ale jsou navrženy pro malá, nízkoenergetická IoT zařízení.
+
+## Kryptografie
+
+Když se zařízení připojuje k IoT službě, používá ID k identifikaci. Problém je, že toto ID může být zkopírováno – hacker by mohl nastavit škodlivé zařízení, které používá stejné ID jako skutečné zařízení, ale posílá falešná data.
+
+
+
+Řešením je převést data, která jsou odesílána, do zašifrovaného formátu pomocí hodnoty známé pouze zařízení a cloudu. Tento proces se nazývá *šifrování* a hodnota použitá k šifrování dat se nazývá *šifrovací klíč*.
+
+
+
+Cloudová služba pak může data převést zpět do čitelného formátu pomocí procesu nazývaného *dešifrování*, buď pomocí stejného šifrovacího klíče, nebo *dešifrovacího klíče*. Pokud zašifrovanou zprávu nelze dešifrovat klíčem, zařízení bylo hacknuto a zpráva je odmítnuta.
+
+Technika pro šifrování a dešifrování se nazývá *kryptografie*.
+
+### Raná kryptografie
+
+Nejstarší typy kryptografie byly substituční šifry, které se datují 3 500 let zpět. Substituční šifry zahrnují nahrazení jednoho písmene jiným. Například [Caesarova šifra](https://wikipedia.org/wiki/Caesar_cipher) zahrnuje posunutí abecedy o definované množství, přičemž pouze odesílatel zašifrované zprávy a zamýšlený příjemce vědí, o kolik písmen se posunout.
+
+[Vigenèrova šifra](https://wikipedia.org/wiki/Vigenère_cipher) šla ještě dál tím, že používala slova k šifrování textu, takže každé písmeno v původním textu bylo posunuto o jiné množství, místo aby se vždy posunovalo o stejný počet písmen.
+
+Kryptografie byla používána k široké škále účelů, například k ochraně receptu na glazuru hrnčíře ve starověké Mezopotámii, psaní tajných milostných dopisů v Indii nebo k uchování tajemství staroegyptských magických zaklínadel.
+
+### Moderní kryptografie
+
+Moderní kryptografie je mnohem pokročilejší, což ji činí těžší prolomit než rané metody. Moderní kryptografie používá složité matematické postupy k šifrování dat s příliš mnoha možnými klíči, aby byly útoky hrubou silou možné.
+
+Kryptografie se používá v mnoha různých oblastech pro bezpečnou komunikaci. Pokud čtete tuto stránku na GitHubu, můžete si všimnout, že adresa webu začíná *HTTPS*, což znamená, že komunikace mezi vaším prohlížečem a webovými servery GitHubu je šifrována. Pokud by někdo mohl číst internetový provoz mezi vaším prohlížečem a GitHubem, nemohl by data přečíst, protože jsou šifrována. Váš počítač může dokonce šifrovat všechna data na vašem pevném disku, takže pokud by ho někdo ukradl, nemohl by bez vašeho hesla přečíst žádná data.
+
+> 🎓 HTTPS znamená HyperText Transfer Protocol **Secure**
+
+Bohužel ne všechno je bezpečné. Některá zařízení nemají žádné zabezpečení, jiná jsou zabezpečena pomocí snadno prolomitelných klíčů, nebo dokonce všechna zařízení stejného typu používají stejný klíč. Existují případy velmi osobních IoT zařízení, která mají všechna stejné heslo pro připojení přes WiFi nebo Bluetooth. Pokud se můžete připojit ke svému vlastnímu zařízení, můžete se připojit i k zařízení někoho jiného. Jakmile se připojíte, můžete získat přístup k velmi soukromým datům nebo mít kontrolu nad jejich zařízením.
+
+> 💁 Navzdory složitosti moderní kryptografie a tvrzením, že prolomení šifrování může trvat miliardy let, vzestup kvantového počítání přinesl možnost prolomení všech známých šifrování během velmi krátké doby!
+
+### Symetrické a asymetrické klíče
+
+Šifrování existuje ve dvou typech – symetrické a asymetrické.
+
+**Symetrické** šifrování používá stejný klíč k šifrování i dešifrování dat. Odesílatel i příjemce musí znát stejný klíč. Toto je nejméně bezpečný typ, protože klíč musí být nějakým způsobem sdílen. Aby odesílatel mohl poslat zašifrovanou zprávu příjemci, musí nejprve odeslat příjemci klíč.
+
+
+
+Pokud je klíč během přenosu ukraden, nebo je odesílatel či příjemce hacknut a klíč je nalezen, šifrování může být prolomeno.
+
+
+
+**Asymetrické** šifrování používá 2 klíče – šifrovací klíč a dešifrovací klíč, označované jako veřejný/soukromý pár klíčů. Veřejný klíč se používá k šifrování zprávy, ale nelze ho použít k jejímu dešifrování, soukromý klíč se používá k dešifrování zprávy, ale nelze ho použít k jejímu šifrování.
+
+
+
+Příjemce sdílí svůj veřejný klíč a odesílatel ho používá k šifrování zprávy. Jakmile je zpráva odeslána, příjemce ji dešifruje pomocí svého soukromého klíče. Asymetrické šifrování je bezpečnější, protože soukromý klíč je uchováván v tajnosti příjemcem a nikdy není sdílen. Veřejný klíč může mít kdokoli, protože ho lze použít pouze k šifrování zpráv.
+
+Symetrické šifrování je rychlejší než asymetrické, asymetrické je bezpečnější. Některé systémy používají obojí – asymetrické šifrování k zašifrování a sdílení symetrického klíče, poté symetrický klíč k šifrování všech dat. To umožňuje bezpečnější sdílení symetrického klíče mezi odesílatelem a příjemcem a rychlejší šifrování a dešifrování dat.
+
+## Zabezpečení IoT zařízení
+
+IoT zařízení mohou být zabezpečena pomocí symetrického nebo asymetrického šifrování. Symetrické je jednodušší, ale méně bezpečné.
+
+### Symetrické klíče
+
+Když nastavujete své IoT zařízení pro interakci s IoT Hubem, použili jste připojovací řetězec. Příklad připojovacího řetězce je:
+
+```output
+HostName=soil-moisture-sensor.azure-devices.net;DeviceId=soil-moisture-sensor;SharedAccessKey=Bhry+ind7kKEIDxubK61RiEHHRTrPl7HUow8cEm/mU0=
+```
+
+Tento připojovací řetězec se skládá ze tří částí oddělených středníky, přičemž každá část je klíč a hodnota:
+
+| Klíč | Hodnota | Popis |
+| --- | ----- | ----------- |
+| HostName | `soil-moisture-sensor.azure-devices.net` | URL IoT Hubu |
+| DeviceId | `soil-moisture-sensor` | Jedinečné ID zařízení |
+| SharedAccessKey | `Bhry+ind7kKEIDxubK61RiEHHRTrPl7HUow8cEm/mU0=` | Symetrický klíč známý zařízením a IoT Hubem |
+
+Poslední část tohoto připojovacího řetězce, `SharedAccessKey`, je symetrický klíč známý jak zařízením, tak IoT Hubem. Tento klíč nikdy není odeslán ze zařízení do cloudu nebo z cloudu do zařízení. Místo toho se používá k šifrování dat, která jsou odesílána nebo přijímána.
+
+✅ Udělejte experiment. Co si myslíte, že se stane, pokud změníte část `SharedAccessKey` v připojovacím řetězci při připojování vašeho IoT zařízení? Vyzkoušejte to.
+
+Když se zařízení poprvé pokusí připojit, odešle token sdíleného přístupu (SAS) obsahující URL IoT Hubu, časový údaj, kdy token přístupu vyprší (obvykle 1 den od aktuálního času), a podpis. Tento podpis se skládá z URL a času vypršení zašifrovaného pomocí sdíleného přístupového klíče z připojovacího řetězce.
+
+IoT Hub dešifruje tento podpis pomocí sdíleného přístupového klíče a pokud dešifrovaná hodnota odpovídá URL a času vypršení, zařízení je povoleno připojit se. Také ověřuje, že aktuální čas je před časem vypršení, aby zabránil škodlivému zařízení zachytit token SAS skutečného zařízení a použít ho.
+
+Toto je elegantní způsob, jak ověřit, že odesílatel je správné zařízení. Odesláním známých dat ve formě dešifrované i zašifrované může server ověřit zařízení tím, že zajistí, že když dešifruje zašifrovaná data, výsledek odpovídá dešifrované verzi, která byla odeslána. Pokud se shodují, pak odesílatel i příjemce mají stejný symetrický šif
+💁 Kvůli době vypršení platnosti musí vaše IoT zařízení znát přesný čas, který se obvykle získává ze serveru [NTP](https://wikipedia.org/wiki/Network_Time_Protocol). Pokud čas není přesný, připojení selže.
+Po připojení budou všechna data odeslaná do IoT Hubu z zařízení nebo na zařízení z IoT Hubu šifrována pomocí sdíleného přístupového klíče.
+
+✅ Co si myslíte, že se stane, pokud více zařízení sdílí stejný připojovací řetězec?
+
+> 💁 Není dobrá bezpečnostní praxe ukládat tento klíč do kódu. Pokud hacker získá váš zdrojový kód, může získat váš klíč. Je také obtížnější při vydávání kódu, protože byste museli znovu zkompilovat s aktualizovaným klíčem pro každé zařízení. Je lepší načíst tento klíč z hardwarového bezpečnostního modulu – čipu na IoT zařízení, který ukládá šifrované hodnoty, jež může váš kód číst.
+>
+> Při učení IoT je často jednodušší vložit klíč do kódu, jak jste to udělali v předchozí lekci, ale musíte zajistit, aby tento klíč nebyl zkontrolován do veřejného systému správy zdrojového kódu.
+
+Zařízení mají 2 klíče a 2 odpovídající připojovací řetězce. To umožňuje rotaci klíčů – tedy přepnutí z jednoho klíče na druhý, pokud je první kompromitován, a znovu vygenerování prvního klíče.
+
+### X.509 certifikáty
+
+Když používáte asymetrické šifrování s párem veřejného/soukromého klíče, musíte poskytnout svůj veřejný klíč každému, kdo vám chce poslat data. Problém je, jak si může příjemce vašeho klíče být jistý, že je to skutečně váš veřejný klíč, a ne někdo jiný, kdo se za vás vydává? Místo poskytování klíče můžete místo toho poskytnout svůj veřejný klíč uvnitř certifikátu, který byl ověřen důvěryhodnou třetí stranou, nazývanou X.509 certifikát.
+
+X.509 certifikáty jsou digitální dokumenty, které obsahují veřejnou část páru veřejného/soukromého klíče. Obvykle jsou vydávány jednou z řady důvěryhodných organizací nazývaných [Certifikační autority](https://wikipedia.org/wiki/Certificate_authority) (CA) a digitálně podepsány CA, aby naznačily, že klíč je platný a pochází od vás. Certifikátu důvěřujete a věříte, že veřejný klíč pochází od toho, koho certifikát uvádí, protože důvěřujete CA, podobně jako byste důvěřovali pasu nebo řidičskému průkazu, protože důvěřujete zemi, která ho vydala. Certifikáty stojí peníze, takže můžete také „sami podepsat“, tedy vytvořit certifikát sami, který je podepsán vámi, pro testovací účely.
+
+> 💁 Nikdy byste neměli používat certifikát podepsaný sami pro produkční vydání.
+
+Tyto certifikáty obsahují řadu polí, včetně toho, od koho je veřejný klíč, podrobností o CA, která ho vydala, jak dlouho je platný, a samotného veřejného klíče. Před použitím certifikátu je dobrá praxe ověřit jej kontrolou, zda byl podepsán původní CA.
+
+✅ Kompletní seznam polí v certifikátu si můžete přečíst v [Microsoft Understanding X.509 Public Key Certificates tutorial](https://docs.microsoft.com/azure/iot-hub/tutorial-x509-certificates?WT.mc_id=academic-17441-jabenn#certificate-fields)
+
+Při používání X.509 certifikátů budou mít jak odesílatel, tak příjemce své vlastní veřejné a soukromé klíče, stejně jako oba budou mít X.509 certifikáty obsahující veřejný klíč. Poté si nějakým způsobem vymění X.509 certifikáty, přičemž k šifrování dat, která odesílají, používají veřejné klíče druhé strany, a k dešifrování dat, která přijímají, používají svůj vlastní soukromý klíč.
+
+
+
+Jednou z velkých výhod používání X.509 certifikátů je, že je lze sdílet mezi zařízeními. Můžete vytvořit jeden certifikát, nahrát ho do IoT Hubu a použít ho pro všechna vaše zařízení. Každé zařízení pak potřebuje pouze znát soukromý klíč, aby dešifrovalo zprávy, které přijímá z IoT Hubu.
+
+Certifikát používaný vaším zařízením k šifrování zpráv, které odesílá do IoT Hubu, je publikován společností Microsoft. Je to stejný certifikát, který používá mnoho služeb Azure, a někdy je zabudován do SDK.
+
+> 💁 Pamatujte, že veřejný klíč je právě to – veřejný. Veřejný klíč Azure lze použít pouze k šifrování dat odesílaných do Azure, nikoli k jejich dešifrování, takže ho lze sdílet všude, včetně zdrojového kódu. Například ho můžete vidět v [Azure IoT C SDK source code](https://github.com/Azure/azure-iot-sdk-c/blob/master/certs/certs.c).
+
+✅ S X.509 certifikáty je spojeno mnoho odborných termínů. Definice některých pojmů, na které můžete narazit, si můžete přečíst v [The layman’s guide to X.509 certificate jargon](https://techcommunity.microsoft.com/t5/internet-of-things/the-layman-s-guide-to-x-509-certificate-jargon/ba-p/2203540?WT.mc_id=academic-17441-jabenn)
+
+## Generování a použití X.509 certifikátu
+
+Kroky k vytvoření X.509 certifikátu jsou:
+
+1. Vytvořte pár veřejného/soukromého klíče. Jedním z nejrozšířenějších algoritmů pro generování páru veřejného/soukromého klíče je [Rivest–Shamir–Adleman](https://wikipedia.org/wiki/RSA_(cryptosystem))(RSA).
+
+1. Odešlete veřejný klíč s přidruženými daty k podepsání, buď CA, nebo vlastním podpisem.
+
+Azure CLI má příkazy k vytvoření nové identity zařízení v IoT Hubu a automaticky generuje pár veřejného/soukromého klíče a vytvoří certifikát podepsaný vlastníkem.
+
+> 💁 Pokud chcete vidět kroky podrobněji, místo použití Azure CLI, najdete je v [Using OpenSSL to create self-signed certificates tutorial in the Microsoft IoT Hub documentation](https://docs.microsoft.com/azure/iot-hub/tutorial-x509-self-sign?WT.mc_id=academic-17441-jabenn)
+
+### Úkol – vytvořte identitu zařízení pomocí X.509 certifikátu
+
+1. Spusťte následující příkaz k registraci nové identity zařízení, automaticky generující klíče a certifikáty:
+
+ ```sh
+ az iot hub device-identity create --device-id soil-moisture-sensor-x509 \
+ --am x509_thumbprint \
+ --output-dir . \
+ --hub-name
+ ```
+
+ Nahraďte `` názvem, který jste použili pro svůj IoT Hub.
+
+ Tím se vytvoří zařízení s ID `soil-moisture-sensor-x509`, aby se odlišilo od identity zařízení, kterou jste vytvořili v předchozí lekci. Tento příkaz také vytvoří 2 soubory v aktuálním adresáři:
+
+ * `soil-moisture-sensor-x509-key.pem` – tento soubor obsahuje soukromý klíč zařízení.
+ * `soil-moisture-sensor-x509-cert.pem` – toto je soubor X.509 certifikátu zařízení.
+
+ Tyto soubory uchovávejte v bezpečí! Soubor se soukromým klíčem by neměl být zkontrolován do veřejného systému správy zdrojového kódu.
+
+### Úkol – použijte X.509 certifikát ve svém kódu zařízení
+
+Projděte si relevantní průvodce připojením vašeho IoT zařízení ke cloudu pomocí X.509 certifikátu:
+
+* [Arduino - Wio Terminal](wio-terminal-x509.md)
+* [Jednodeskový počítač - Raspberry Pi/Virtual IoT device](single-board-computer-x509.md)
+
+---
+
+## 🚀 Výzva
+
+Existuje několik způsobů, jak vytvořit, spravovat a mazat služby Azure, jako jsou Resource Groups a IoT Huby. Jedním ze způsobů je [Azure Portal](https://portal.azure.com?WT.mc_id=academic-17441-jabenn) – webové rozhraní, které vám poskytuje GUI pro správu vašich služeb Azure.
+
+Přejděte na [portal.azure.com](https://portal.azure.com?WT.mc_id=academic-17441-jabenn) a prozkoumejte portál. Zkuste vytvořit IoT Hub pomocí portálu a poté ho smazat.
+
+**Tip** – při vytváření služeb prostřednictvím portálu nemusíte předem vytvářet Resource Group, jedna může být vytvořena při vytváření služby. Ujistěte se, že ji smažete, když skončíte!
+
+Na portálu Azure najdete spoustu dokumentace, tutoriálů a průvodců v [Azure portal documentation](https://docs.microsoft.com/azure/azure-portal/?WT.mc_id=academic-17441-jabenn).
+
+## Kvíz po přednášce
+
+[Kvíz po přednášce](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/20)
+
+## Přehled & Samostudium
+
+* Přečtěte si o historii kryptografie na [History of cryptography page on Wikipedia](https://wikipedia.org/wiki/History_of_cryptography).
+* Přečtěte si o X.509 certifikátech na [X.509 page on Wikipedia](https://wikipedia.org/wiki/X.509).
+
+## Zadání
+
+[Vytvořte nové IoT zařízení](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/6-keep-your-plant-secure/assignment.md b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/assignment.md
new file mode 100644
index 00000000..b30ee781
--- /dev/null
+++ b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/assignment.md
@@ -0,0 +1,29 @@
+
+# Vytvoření nového IoT zařízení
+
+## Instrukce
+
+Během posledních 6 lekcí jste se naučili o digitálním zemědělství a o tom, jak používat IoT zařízení ke sběru dat pro předpověď růstu rostlin a automatizaci zavlažování na základě měření vlhkosti půdy.
+
+Využijte to, co jste se naučili, k vytvoření nového IoT zařízení s použitím senzoru a aktuátoru dle vašeho výběru. Odesílejte telemetrii do IoT Hubu a použijte ji k ovládání aktuátoru prostřednictvím bezserverového kódu. Můžete použít senzor a aktuátor, které jste již použili v tomto nebo předchozím projektu, nebo pokud máte jiný hardware, vyzkoušejte něco nového.
+
+## Hodnoticí kritéria
+
+| Kritérium | Vynikající | Dostatečné | Potřebuje zlepšení |
+| --------- | ---------- | ---------- | ------------------ |
+| Naprogramovat IoT zařízení pro použití senzoru a aktuátoru | Naprogramováno IoT zařízení, které funguje se senzorem i aktuátorem | Naprogramováno IoT zařízení, které funguje se senzorem nebo aktuátorem | Nepodařilo se naprogramovat IoT zařízení pro použití senzoru nebo aktuátoru |
+| Připojit IoT zařízení k IoT Hubu | Podařilo se nasadit IoT Hub, odesílat do něj telemetrii a přijímat z něj příkazy | Podařilo se nasadit IoT Hub a buď odesílat telemetrii, nebo přijímat příkazy | Nepodařilo se nasadit IoT Hub a komunikovat s ním z IoT zařízení |
+| Ovládat aktuátor pomocí bezserverového kódu | Podařilo se nasadit Azure Function pro ovládání zařízení spouštěnou telemetrickými událostmi | Podařilo se nasadit Azure Function spouštěnou telemetrickými událostmi, ale nepodařilo se ovládat aktuátor | Nepodařilo se nasadit Azure Function |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/6-keep-your-plant-secure/single-board-computer-x509.md b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/single-board-computer-x509.md
new file mode 100644
index 00000000..c96403e9
--- /dev/null
+++ b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/single-board-computer-x509.md
@@ -0,0 +1,71 @@
+
+# Použití certifikátu X.509 ve vašem zařízení - Virtuální IoT hardware a Raspberry Pi
+
+V této části lekce připojíte své virtuální IoT zařízení nebo Raspberry Pi k IoT Hubu pomocí certifikátu X.509.
+
+## Připojení zařízení k IoT Hubu
+
+Dalším krokem je připojení vašeho zařízení k IoT Hubu pomocí certifikátů X.509.
+
+### Úkol - připojení k IoT Hubu
+
+1. Zkopírujte soubory s klíčem a certifikátem do složky obsahující kód vašeho IoT zařízení. Pokud používáte Raspberry Pi přes VS Code Remote SSH a klíče jste vytvořili na svém PC nebo Macu, můžete soubory přetáhnout do průzkumníka ve VS Code a tím je zkopírovat.
+
+1. Otevřete soubor `app.py`.
+
+1. Pro připojení pomocí certifikátu X.509 budete potřebovat název hostitele IoT Hubu a certifikát X.509. Začněte vytvořením proměnné obsahující název hostitele přidáním následujícího kódu před vytvoření klienta zařízení:
+
+ ```python
+ host_name = ""
+ ```
+
+ Nahraďte `` názvem hostitele vašeho IoT Hubu. Tento název najdete v sekci `HostName` v `connection_string`. Bude to název vašeho IoT Hubu končící na `.azure-devices.net`.
+
+1. Pod tímto kódem deklarujte proměnnou s ID zařízení:
+
+ ```python
+ device_id = "soil-moisture-sensor-x509"
+ ```
+
+1. Budete potřebovat instanci třídy `X509`, která obsahuje soubory certifikátu X.509. Přidejte `X509` do seznamu tříd importovaných z modulu `azure.iot.device`:
+
+ ```python
+ from azure.iot.device import IoTHubDeviceClient, Message, MethodResponse, X509
+ ```
+
+1. Vytvořte instanci třídy `X509` pomocí vašich souborů certifikátu a klíče přidáním tohoto kódu pod deklaraci `host_name`:
+
+ ```python
+ x509 = X509("./soil-moisture-sensor-x509-cert.pem", "./soil-moisture-sensor-x509-key.pem")
+ ```
+
+ Tímto vytvoříte třídu `X509` pomocí souborů `soil-moisture-sensor-x509-cert.pem` a `soil-moisture-sensor-x509-key.pem`, které jste vytvořili dříve.
+
+1. Nahraďte řádek kódu, který vytváří `device_client` z připojovacího řetězce, následujícím:
+
+ ```python
+ device_client = IoTHubDeviceClient.create_from_x509_certificate(x509, host_name, device_id)
+ ```
+
+ Tímto se připojíte pomocí certifikátu X.509 namísto připojovacího řetězce.
+
+1. Smažte řádek s proměnnou `connection_string`.
+
+1. Spusťte svůj kód. Sledujte zprávy odesílané do IoT Hubu a posílejte požadavky na přímé metody jako dříve. Uvidíte, že se zařízení připojuje, odesílá údaje o vlhkosti půdy a přijímá požadavky na přímé metody.
+
+> 💁 Tento kód najdete ve složce [code/pi](../../../../../2-farm/lessons/6-keep-your-plant-secure/code/pi) nebo [code/virtual-device](../../../../../2-farm/lessons/6-keep-your-plant-secure/code/virtual-device).
+
+😀 Váš program pro senzor vlhkosti půdy je připojen k vašemu IoT Hubu pomocí certifikátu X.509!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/2-farm/lessons/6-keep-your-plant-secure/wio-terminal-x509.md b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/wio-terminal-x509.md
new file mode 100644
index 00000000..bd32112d
--- /dev/null
+++ b/translations/cs/2-farm/lessons/6-keep-your-plant-secure/wio-terminal-x509.md
@@ -0,0 +1,17 @@
+
+# Použití certifikátu X.509 ve vašem zařízení - Wio Terminal
+
+V době psaní tohoto textu Azure Arduino SDK nepodporuje certifikáty X.509. Pokud chcete experimentovat s certifikáty X.509, můžete se podívat na [pokyny pro virtuální IoT zařízení pomocí Python SDK](single-board-computer-x509.md).
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/README.md b/translations/cs/3-transport/README.md
new file mode 100644
index 00000000..093368b6
--- /dev/null
+++ b/translations/cs/3-transport/README.md
@@ -0,0 +1,38 @@
+
+# Transport z farmy do továrny - využití IoT ke sledování dodávek potravin
+
+Mnoho farmářů pěstuje potraviny na prodej – buď jsou to komerční farmáři, kteří prodávají vše, co vypěstují, nebo jsou to farmáři na úrovni samozásobitelství, kteří prodávají přebytek své produkce, aby si mohli koupit nezbytnosti. Nějakým způsobem se potraviny musí dostat z farmy ke spotřebiteli, což obvykle zahrnuje hromadnou přepravu z farem do distribučních center nebo zpracovatelských závodů, a poté do obchodů. Například farmář pěstující rajčata sklidí rajčata, zabalí je do krabic, naloží krabice na nákladní vůz a doručí je do zpracovatelského závodu. Rajčata se tam roztřídí a následně se dostanou ke spotřebitelům ve formě zpracovaných potravin, maloobchodního prodeje nebo jako surovina pro restaurace.
+
+IoT může pomoci s tímto dodavatelským řetězcem sledováním potravin během přepravy – zajištěním, že řidiči jedou tam, kam mají, monitorováním polohy vozidel a zasíláním upozornění při příjezdu vozidel, aby bylo možné potraviny vyložit a připravit k dalšímu zpracování co nejdříve.
+
+> 🎓 *Dodavatelský řetězec* je sled činností potřebných k výrobě a dodání něčeho. Například v případě pěstování rajčat zahrnuje dodavatelský řetězec dodávku semen, půdy, hnojiv a vody, pěstování rajčat, jejich dopravu do centrálního distribučního centra, přepravu do místního centra supermarketu, přepravu do jednotlivých supermarketů, vystavení na prodej, prodej spotřebiteli a odnesení domů k jídlu. Každý krok je jako článek v řetězu.
+
+> 🎓 Část dodavatelského řetězce týkající se přepravy se nazývá *logistika*.
+
+V těchto 4 lekcích se naučíte, jak využít Internet věcí ke zlepšení dodavatelského řetězce sledováním potravin při nakládání na (virtuální) nákladní vůz, který je sledován během cesty do cílové destinace. Naučíte se o GPS sledování, jak ukládat a vizualizovat GPS data a jak být upozorněni, když nákladní vůz dorazí do cíle.
+
+> 💁 Tyto lekce využívají některé cloudové zdroje. Pokud nebudete pokračovat ve všech lekcích tohoto projektu, nezapomeňte [vyčistit svůj projekt](../clean-up.md).
+
+## Témata
+
+1. [Sledování polohy](lessons/1-location-tracking/README.md)
+1. [Ukládání dat o poloze](lessons/2-store-location-data/README.md)
+1. [Vizualizace dat o poloze](lessons/3-visualize-location-data/README.md)
+1. [Geofencing](lessons/4-geofences/README.md)
+
+## Autoři
+
+Všechny lekce byly napsány s ♥️ [Jen Looper](https://github.com/jlooper) a [Jim Bennett](https://GitHub.com/JimBobBennett).
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/1-location-tracking/README.md b/translations/cs/3-transport/lessons/1-location-tracking/README.md
new file mode 100644
index 00000000..a1401249
--- /dev/null
+++ b/translations/cs/3-transport/lessons/1-location-tracking/README.md
@@ -0,0 +1,216 @@
+
+# Sledování polohy
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+## Kvíz před přednáškou
+
+[Kvíz před přednáškou](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/21)
+
+## Úvod
+
+Hlavní proces, jak dostat potraviny od farmáře ke spotřebiteli, zahrnuje nakládání beden s produkty na nákladní auta, lodě, letadla nebo jiná komerční dopravní vozidla a jejich doručení na určité místo – buď přímo zákazníkovi, nebo do centrálního skladu či zpracovatelského centra. Celý tento proces od farmy ke spotřebiteli je součástí procesu nazývaného *dodavatelský řetězec*. Video níže z W. P. Carey School of Business na Arizona State University podrobněji vysvětluje koncept dodavatelského řetězce a jeho řízení.
+
+[](https://www.youtube.com/watch?v=Mi1QBxVjZAw)
+
+> 🎥 Klikněte na obrázek výše pro zhlédnutí videa
+
+Přidání IoT zařízení může výrazně zlepšit váš dodavatelský řetězec, umožní vám lépe spravovat, kde se položky nacházejí, plánovat dopravu a manipulaci se zbožím a rychleji reagovat na problémy.
+
+Při správě flotily vozidel, jako jsou nákladní auta, je užitečné vědět, kde se každé vozidlo v daném okamžiku nachází. Vozidla mohou být vybavena GPS senzory, které odesílají svou polohu do IoT systémů, což umožňuje majitelům určit jejich polohu, sledovat trasu, kterou urazila, a vědět, kdy dorazí na místo určení. Většina vozidel operuje mimo dosah WiFi, takže k odesílání těchto dat používají mobilní sítě. Někdy je GPS senzor součástí složitějších IoT zařízení, jako jsou elektronické záznamníky jízd. Tato zařízení sledují, jak dlouho je nákladní auto na cestě, aby zajistila, že řidiči dodržují místní zákony o pracovní době.
+
+V této lekci se naučíte, jak sledovat polohu vozidla pomocí senzoru globálního polohového systému (GPS).
+
+V této lekci se budeme zabývat:
+
+* [Připojenými vozidly](../../../../../3-transport/lessons/1-location-tracking)
+* [Geoprostorovými souřadnicemi](../../../../../3-transport/lessons/1-location-tracking)
+* [Globálními polohovými systémy (GPS)](../../../../../3-transport/lessons/1-location-tracking)
+* [Čtením dat ze senzoru GPS](../../../../../3-transport/lessons/1-location-tracking)
+* [NMEA GPS daty](../../../../../3-transport/lessons/1-location-tracking)
+* [Dekódováním dat ze senzoru GPS](../../../../../3-transport/lessons/1-location-tracking)
+
+## Připojená vozidla
+
+IoT mění způsob, jakým se zboží přepravuje, tím, že vytváří flotily *připojených vozidel*. Tato vozidla jsou připojena k centrálním IT systémům, které hlásí informace o jejich poloze a dalších senzorových datech. Mít flotilu připojených vozidel přináší řadu výhod:
+
+* Sledování polohy – můžete přesně určit, kde se vozidlo nachází v daném okamžiku, což vám umožní:
+
+ * Získat upozornění, když se vozidlo blíží k cíli, abyste mohli připravit posádku na vykládku
+ * Lokalizovat odcizená vozidla
+ * Kombinovat data o poloze a trase s dopravními problémy a umožnit přesměrování vozidel během cesty
+ * Dodržovat daňové předpisy. Některé země účtují vozidlům poplatky za počet ujetých kilometrů na veřejných silnicích (například [RUC na Novém Zélandu](https://www.nzta.govt.nz/vehicles/licensing-rego/road-user-charges/)), takže vědět, kdy je vozidlo na veřejných vs. soukromých silnicích, usnadňuje výpočet dlužné daně.
+ * Vědět, kam poslat údržbářské týmy v případě poruchy
+
+* Telemetrie řidiče – možnost zajistit, že řidiči dodržují rychlostní limity, projíždějí zatáčky přiměřenou rychlostí, brzdí včas a efektivně a jezdí bezpečně. Připojená vozidla mohou mít také kamery pro záznam incidentů. To může být propojeno s pojištěním, což umožňuje snížené sazby pro dobré řidiče.
+
+* Dodržování pracovní doby řidičů – zajištění, že řidiči jezdí pouze po zákonem povolenou dobu na základě časů, kdy zapnou a vypnou motor.
+
+Tyto výhody lze kombinovat – například kombinovat dodržování pracovní doby řidičů se sledováním polohy, aby bylo možné přesměrovat řidiče, pokud nemohou dosáhnout cíle v rámci povolené pracovní doby. Tyto výhody lze také kombinovat s dalšími specifickými telemetrickými údaji o vozidle, jako jsou údaje o teplotě z chladírenských nákladních vozů, což umožňuje přesměrování vozidel, pokud by jejich aktuální trasa znamenala, že zboží nelze udržet v požadované teplotě.
+
+> 🎓 Logistika je proces přepravy zboží z jednoho místa na druhé, například z farmy do supermarketu přes jeden nebo více skladů. Farmář zabalí bedny s rajčaty, které jsou naloženy na nákladní auto, doručeny do centrálního skladu a poté naloženy na druhé nákladní auto, které může obsahovat směs různých druhů produktů, jež jsou následně doručeny do supermarketu.
+
+Základní součástí sledování vozidel je GPS – senzory, které mohou určit jejich polohu kdekoli na Zemi. V této lekci se naučíte, jak používat GPS senzor, počínaje tím, jak definovat polohu na Zemi.
+
+## Geoprostorové souřadnice
+
+Geoprostorové souřadnice se používají k definování bodů na povrchu Země, podobně jako se souřadnice používají k vykreslení pixelu na obrazovce počítače nebo k umístění stehů při vyšívání. Pro jeden bod máte dvojici souřadnic. Například kampus Microsoftu v Redmondu, Washington, USA se nachází na 47.6423109, -122.1390293.
+
+### Zeměpisná šířka a délka
+
+Země je koule – trojrozměrný kruh. Z tohoto důvodu jsou body definovány rozdělením na 360 stupňů, stejně jako geometrie kruhů. Zeměpisná šířka měří počet stupňů od severu k jihu, zeměpisná délka měří počet stupňů od východu k západu.
+
+> 💁 Nikdo přesně neví, proč jsou kruhy rozděleny na 360 stupňů. [Stránka o stupních (úhlech) na Wikipedii](https://wikipedia.org/wiki/Degree_(angle)) pokrývá některé možné důvody.
+
+
+
+Zeměpisná šířka se měří pomocí čar, které obkružují Zemi a běží paralelně s rovníkem, rozdělují severní a jižní polokouli na 90° každou. Rovník je na 0°, severní pól je na 90°, také známý jako 90° severní šířky, a jižní pól je na -90°, nebo 90° jižní šířky.
+
+Zeměpisná délka se měří jako počet stupňů na východ a západ. Nulový poledník, označovaný jako *Prime Meridian*, byl v roce 1884 definován jako čára od severního k jižnímu pólu, která prochází [Královskou observatoří v Greenwichi, Anglie](https://wikipedia.org/wiki/Royal_Observatory,_Greenwich).
+
+
+
+> 🎓 Poledník je imaginární přímka, která vede od severního pólu k jižnímu pólu a tvoří půlkruh.
+
+Pro měření zeměpisné délky bodu měříte počet stupňů kolem rovníku od Prime Meridian k poledníku, který prochází tímto bodem. Zeměpisná délka se pohybuje od -180°, nebo 180° západní délky, přes 0° na Prime Meridian, až po 180°, nebo 180° východní délky. 180° a -180° označují stejný bod, antimeridián nebo 180. poledník. To je poledník na opačné straně Země od Prime Meridian.
+
+> 💁 Antimeridián by neměl být zaměňován s mezinárodní datovou čarou, která se nachází přibližně na stejném místě, ale není přímá a mění se, aby se přizpůsobila geopolitickým hranicím.
+
+✅ Udělejte si průzkum: Zkuste najít zeměpisnou šířku a délku svého aktuálního umístění.
+
+### Stupně, minuty a sekundy vs. desetinné stupně
+
+Tradičně se měření stupňů zeměpisné šířky a délky provádělo pomocí šedesátkové soustavy, nebo základu 60, což je číselný systém používaný starověkými Babylóňany, kteří jako první měřili a zaznamenávali čas a vzdálenost. Šedesátkovou soustavu pravděpodobně používáte každý den, aniž byste si to uvědomovali – například při dělení hodin na 60 minut a minut na 60 sekund.
+
+Zeměpisná délka a šířka se měří ve stupních, minutách a sekundách, přičemž jedna minuta je 1/60 stupně a jedna sekunda je 1/60 minuty.
+
+Například na rovníku:
+
+* 1° zeměpisné šířky je **111,3 kilometrů**
+* 1 minuta zeměpisné šířky je 111,3/60 = **1,855 kilometrů**
+* 1 sekunda zeměpisné šířky je 1,855/60 = **0,031 kilometrů**
+
+Symbol pro minutu je jednoduchá čárka, pro sekundu dvojitá čárka. Například 2 stupně, 17 minut a 43 sekund by se psalo jako 2°17'43". Části sekund se uvádějí jako desetinná čísla, například polovina sekundy je 0°0'0.5".
+
+Počítače nepracují v šedesátkové soustavě, takže tyto souřadnice se v GPS datech většinou uvádějí jako desetinné stupně. Například 2°17'43" je 2.295277. Symbol stupně se obvykle vynechává.
+
+Souřadnice bodu se vždy uvádějí jako `zeměpisná šířka, zeměpisná délka`, takže příklad uvedený dříve pro kampus Microsoftu na 47.6423109,-122.117198 má:
+
+* Zeměpisnou šířku 47.6423109 (47.6423109 stupňů severně od rovníku)
+* Zeměpisnou délku -122.1390293 (122.1390293 stupňů západně od Prime Meridian).
+
+
+
+## Globální polohové systémy (GPS)
+
+GPS systémy využívají více satelitů obíhajících Zemi k určení vaší polohy. Pravděpodobně jste GPS systémy používali, aniž byste si to uvědomovali – například k nalezení své polohy v mapové aplikaci na telefonu, jako je Apple Maps nebo Google Maps, nebo k zjištění, kde se nachází vaše jízda v aplikaci jako Uber nebo Lyft, nebo při používání satelitní navigace (sat-nav) ve vašem autě.
+
+> 🎓 Satelity v „satelitní navigaci“ jsou GPS satelity!
+
+GPS systémy fungují tak, že mají řadu satelitů, které vysílají signál s aktuální polohou každého satelitu a přesným časovým razítkem. Tyto signály jsou vysílány rádiovými vlnami a detekovány anténou v GPS senzoru. GPS senzor tyto signály detekuje a pomocí aktuálního času měří, jak dlouho trvalo, než signál dorazil ze satelitu k senzoru. Protože rychlost rádiových vln je konstantní, GPS senzor může pomocí časového razítka, které bylo odesláno, vypočítat, jak daleko je senzor od satelitu. Kombinací dat z alespoň 3 satelitů s odeslanými polohami je GPS senzor schopen určit svou polohu na Zemi.
+
+> 💁 GPS senzory potřebují antény k detekci rádiových vln. Antény zabudované do nákladních aut a aut s vestavěným GPS jsou umístěny tak, aby měly dobrý signál, obvykle na čelním skle nebo střeše. Pokud používáte samostatný GPS systém, například chytrý telefon nebo IoT zařízení, musíte zajistit, aby anténa zabudovaná do GPS systému nebo telefonu měla jasný výhled na oblohu, například byla namontována na čelním skle.
+
+
+
+GPS satelity obíhají Zemi, nejsou na pevném bodě nad senzorem, takže data o poloze zahrnují nadmořskou výšku nad hladinou moře i zeměpisnou šířku a délku.
+
+GPS dříve mělo omezení přesnosti vynucené americkou armádou, která omezovala přesnost na přibližně 5 metrů. Toto omezení bylo v roce 2000 odstraněno, což umožnilo přesnost 30 centimetrů. Tuto přesnost však není vždy možné dosáhnout kvůli rušení signálů.
+
+✅ Pokud máte chytrý telefon, spusťte mapovou aplikaci a zjistěte, jak přesná je vaše poloha. Může chvíli trvat, než váš telefon detekuje více satelitů a získá přesnější polohu.
+💁 Satelity obsahují atomové hodiny, které jsou neuvěřitelně přesné, ale každý den se odchylují o 38 mikrosekund (0,0000038 sekundy) ve srovnání s atomovými hodinami na Zemi. To je způsobeno zpomalením času při zvyšující se rychlosti, jak předpověděly Einsteinovy teorie speciální a obecné relativity – satelity se pohybují rychleji než rotace Země. Tato odchylka byla použita k potvrzení předpovědí speciální a obecné relativity a musí být zohledněna při návrhu GPS systémů. Doslova čas na GPS satelitu běží pomaleji.
+GPS systémy byly vyvinuty a nasazeny řadou zemí a politických unií, včetně USA, Ruska, Japonska, Indie, EU a Číny. Moderní GPS senzory se mohou připojit k většině těchto systémů, aby získaly rychlejší a přesnější údaje o poloze.
+
+> 🎓 Skupiny satelitů v každém nasazení se označují jako konstelace.
+
+## Čtení dat z GPS senzoru
+
+Většina GPS senzorů posílá data přes UART.
+
+> ⚠️ UART byl probírán v [projektu 2, lekci 2](../../../2-farm/lessons/2-detect-soil-moisture/README.md#universal-asynchronous-receiver-transmitter-uart). Pokud je to potřeba, vraťte se k této lekci.
+
+Pomocí GPS senzoru na vašem IoT zařízení můžete získávat GPS data.
+
+### Úkol - připojte GPS senzor a čtěte GPS data
+
+Postupujte podle příslušného průvodce, abyste mohli číst GPS data pomocí svého IoT zařízení:
+
+* [Arduino - Wio Terminal](wio-terminal-gps-sensor.md)
+* [Jednodeskový počítač - Raspberry Pi](pi-gps-sensor.md)
+* [Jednodeskový počítač - Virtuální zařízení](virtual-device-gps-sensor.md)
+
+## NMEA GPS data
+
+Když jste spustili svůj kód, mohli jste v výstupu vidět něco, co vypadá jako nesrozumitelný text. Ve skutečnosti se jedná o standardní GPS data, která mají svůj význam.
+
+GPS senzory posílají data pomocí NMEA zpráv podle standardu NMEA 0183. NMEA je zkratka pro [National Marine Electronics Association](https://www.nmea.org), což je americká obchodní organizace, která stanovuje standardy pro komunikaci mezi námořní elektronikou.
+
+> 💁 Tento standard je proprietární a jeho cena začíná na 2 000 USD, ale dostatek informací o něm je veřejně dostupný, takže většina standardu byla zpětně analyzována a může být použita v open source a jiném nekomerčním kódu.
+
+Tyto zprávy jsou textového formátu. Každá zpráva se skládá z *věty*, která začíná znakem `$`, následují 2 znaky označující zdroj zprávy (např. GP pro americký GPS systém, GN pro GLONASS, ruský GPS systém) a 3 znaky označující typ zprávy. Zbytek zprávy tvoří pole oddělená čárkami, která končí znakem nového řádku.
+
+Některé typy zpráv, které lze přijímat, jsou:
+
+| Typ | Popis |
+| ---- | ----------- |
+| GGA | Data o GPS poloze, včetně zeměpisné šířky, délky a nadmořské výšky GPS senzoru, spolu s počtem satelitů v dosahu pro výpočet této polohy. |
+| ZDA | Aktuální datum a čas, včetně místní časové zóny |
+| GSV | Podrobnosti o satelitech v dosahu - definované jako satelity, od kterých GPS senzor dokáže přijímat signály |
+
+> 💁 GPS data obsahují časové značky, takže vaše IoT zařízení může získat čas z GPS senzoru, místo aby se spoléhalo na NTP server nebo interní reálný časový modul.
+
+Zpráva GGA obsahuje aktuální polohu ve formátu `(dd)dmm.mmmm`, spolu s jedním znakem označujícím směr. `d` ve formátu znamená stupně, `m` minuty, přičemž sekundy jsou vyjádřeny jako desetinné číslo minut. Například 2°17'43" by bylo 217.716666667 - 2 stupně, 17.716666667 minut.
+
+Znak směru může být `N` nebo `S` pro zeměpisnou šířku, což označuje sever nebo jih, a `E` nebo `W` pro zeměpisnou délku, což označuje východ nebo západ. Například zeměpisná šířka 2°17'43" by měla znak směru `N`, -2°17'43" by měla znak směru `S`.
+
+Například - NMEA věta `$GNGGA,020604.001,4738.538654,N,12208.341758,W,1,3,,164.7,M,-17.1,M,,*67`
+
+* Část zeměpisné šířky je `4738.538654,N`, což se převede na 47.6423109 v desetinných stupních. `4738.538654` je 47.6423109 a směr je `N` (sever), takže jde o kladnou zeměpisnou šířku.
+
+* Část zeměpisné délky je `12208.341758,W`, což se převede na -122.1390293 v desetinných stupních. `12208.341758` je 122.1390293° a směr je `W` (západ), takže jde o zápornou zeměpisnou délku.
+
+## Dekódování dat z GPS senzoru
+
+Místo použití surových NMEA dat je lepší je dekódovat do užitečnějšího formátu. Existuje mnoho open-source knihoven, které vám mohou pomoci extrahovat užitečná data ze surových NMEA zpráv.
+
+### Úkol - dekódujte data z GPS senzoru
+
+Postupujte podle příslušného průvodce, abyste dekódovali data z GPS senzoru pomocí svého IoT zařízení:
+
+* [Arduino - Wio Terminal](wio-terminal-gps-decode.md)
+* [Jednodeskový počítač - Raspberry Pi/Virtuální IoT zařízení](single-board-computer-gps-decode.md)
+
+---
+
+## 🚀 Výzva
+
+Napište si vlastní NMEA dekodér! Místo spoléhání se na knihovny třetích stran pro dekódování NMEA vět, dokážete napsat vlastní dekodér, který extrahuje zeměpisnou šířku a délku z NMEA vět?
+
+## Kvíz po lekci
+
+[Kvíz po lekci](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/22)
+
+## Přehled a samostudium
+
+* Přečtěte si více o geosférických souřadnicích na [stránce o geografickém souřadnicovém systému na Wikipedii](https://wikipedia.org/wiki/Geographic_coordinate_system).
+* Přečtěte si o hlavních polednících na jiných nebeských tělesech kromě Země na [stránce o hlavním poledníku na Wikipedii](https://wikipedia.org/wiki/Prime_meridian#Prime_meridian_on_other_planetary_bodies).
+* Prozkoumejte různé GPS systémy od různých vlád a politických unií, jako jsou EU, Japonsko, Rusko, Indie a USA.
+
+## Zadání
+
+[Prozkoumejte další GPS data](assignment.md)
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/1-location-tracking/assignment.md b/translations/cs/3-transport/lessons/1-location-tracking/assignment.md
new file mode 100644
index 00000000..d3f95c4f
--- /dev/null
+++ b/translations/cs/3-transport/lessons/1-location-tracking/assignment.md
@@ -0,0 +1,29 @@
+
+# Prozkoumejte další GPS data
+
+## Pokyny
+
+NMEA věty z vašeho GPS senzoru obsahují kromě polohy i další data. Prozkoumejte tato dodatečná data a využijte je ve svém IoT zařízení.
+
+Například - můžete získat aktuální datum a čas? Pokud používáte mikrokontrolér, můžete nastavit hodiny pomocí GPS dat stejným způsobem, jako jste je nastavovali pomocí NTP signálů v předchozím projektu? Můžete získat nadmořskou výšku (vaši výšku nad hladinou moře) nebo vaši aktuální rychlost?
+
+Pokud používáte virtuální IoT zařízení, můžete některá z těchto dat získat odesláním NMEA vět generovaných pomocí nástrojů [nmeagen.org](https://www.nmeagen.org).
+
+## Hodnocení
+
+| Kritéria | Vynikající | Přiměřené | Vyžaduje zlepšení |
+| -------- | ---------- | --------- | ----------------- |
+| Získání dalších GPS dat | Je schopen získat a využít další GPS data, buď jako telemetrii, nebo k nastavení IoT zařízení | Je schopen získat další GPS data, ale není schopen je využít | Není schopen získat další GPS data |
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby AI pro překlady [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatizované překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace se doporučuje profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/1-location-tracking/pi-gps-sensor.md b/translations/cs/3-transport/lessons/1-location-tracking/pi-gps-sensor.md
new file mode 100644
index 00000000..8b909548
--- /dev/null
+++ b/translations/cs/3-transport/lessons/1-location-tracking/pi-gps-sensor.md
@@ -0,0 +1,193 @@
+
+# Čtení GPS dat - Raspberry Pi
+
+V této části lekce přidáte k Raspberry Pi GPS senzor a budete z něj číst hodnoty.
+
+## Hardware
+
+Raspberry Pi potřebuje GPS senzor.
+
+Senzor, který budete používat, je [Grove GPS Air530 senzor](https://www.seeedstudio.com/Grove-GPS-Air530-p-4584.html). Tento senzor se může připojit k více GPS systémům pro rychlé a přesné určení polohy. Senzor se skládá ze dvou částí - hlavní elektroniky senzoru a externí antény připojené tenkým kabelem, která zachycuje rádiové vlny ze satelitů.
+
+Jedná se o UART senzor, takže posílá GPS data přes UART.
+
+## Připojení GPS senzoru
+
+Grove GPS senzor lze připojit k Raspberry Pi.
+
+### Úkol - připojení GPS senzoru
+
+Připojte GPS senzor.
+
+
+
+1. Zasuňte jeden konec Grove kabelu do konektoru na GPS senzoru. Kabel lze zasunout pouze jedním směrem.
+
+1. S vypnutým Raspberry Pi připojte druhý konec Grove kabelu do konektoru UART označeného **UART** na Grove Base hat připojeném k Pi. Tento konektor se nachází ve střední řadě na straně blíže k slotu na SD kartu, na opačné straně od USB portů a ethernetového konektoru.
+
+ 
+
+1. Umístěte GPS senzor tak, aby připojená anténa měla viditelnost na oblohu - ideálně vedle otevřeného okna nebo venku. Je snazší získat jasnější signál, pokud anténě nic nepřekáží.
+
+## Programování GPS senzoru
+
+Raspberry Pi nyní může být naprogramováno pro použití připojeného GPS senzoru.
+
+### Úkol - programování GPS senzoru
+
+Naprogramujte zařízení.
+
+1. Zapněte Pi a počkejte, až se spustí.
+
+1. GPS senzor má 2 LED diody - modrou LED, která bliká při přenosu dat, a zelenou LED, která bliká každou sekundu při příjmu dat ze satelitů. Ujistěte se, že modrá LED bliká při zapnutí Pi. Po několika minutách začne blikat zelená LED - pokud ne, možná budete muset přemístit anténu.
+
+1. Spusťte VS Code, buď přímo na Pi, nebo se připojte přes rozšíření Remote SSH.
+
+ > ⚠️ Můžete se podívat na [instrukce pro nastavení a spuštění VS Code v lekci 1, pokud je to potřeba](../../../1-getting-started/lessons/1-introduction-to-iot/pi.md).
+
+1. U novějších verzí Raspberry Pi, které podporují Bluetooth, existuje konflikt mezi sériovým portem používaným pro Bluetooth a tím, který používá Grove UART port. Pro vyřešení tohoto problému postupujte následovně:
+
+ 1. Z terminálu VS Code upravte soubor `/boot/config.txt` pomocí `nano`, vestavěného textového editoru terminálu, pomocí následujícího příkazu:
+
+ ```sh
+ sudo nano /boot/config.txt
+ ```
+
+ > Tento soubor nelze upravovat přímo ve VS Code, protože je potřeba použít `sudo` oprávnění, což je zvýšené oprávnění. VS Code neběží s tímto oprávněním.
+
+ 1. Pomocí kurzorových kláves přejděte na konec souboru, poté zkopírujte níže uvedený kód a vložte jej na konec souboru:
+
+ ```ini
+ dtoverlay=pi3-miniuart-bt
+ dtoverlay=pi3-disable-bt
+ enable_uart=1
+ ```
+
+ Vkládání můžete provést pomocí běžných klávesových zkratek pro vaše zařízení (`Ctrl+v` na Windows, Linux nebo Raspberry Pi OS, `Cmd+v` na macOS).
+
+ 1. Uložte tento soubor a ukončete nano stisknutím `Ctrl+x`. Stiskněte `y`, když budete dotázáni, zda chcete uložit upravený buffer, poté stiskněte `enter`, abyste potvrdili přepsání `/boot/config.txt`.
+
+ > Pokud uděláte chybu, můžete ukončit bez uložení a poté tyto kroky zopakovat.
+
+ 1. Upravte soubor `/boot/cmdline.txt` v nano pomocí následujícího příkazu:
+
+ ```sh
+ sudo nano /boot/cmdline.txt
+ ```
+
+ 1. Tento soubor obsahuje několik dvojic klíč/hodnota oddělených mezerami. Odstraňte všechny dvojice klíč/hodnota pro klíč `console`. Pravděpodobně budou vypadat nějak takto:
+
+ ```output
+ console=serial0,115200 console=tty1
+ ```
+
+ Pomocí kurzorových kláves přejděte na tyto položky a poté je smažte pomocí běžných kláves `del` nebo `backspace`.
+
+ Například pokud váš původní soubor vypadá takto:
+
+ ```output
+ console=serial0,115200 console=tty1 root=PARTUUID=058e2867-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
+ ```
+
+ Nová verze bude:
+
+ ```output
+ root=PARTUUID=058e2867-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
+ ```
+
+ 1. Postupujte podle výše uvedených kroků pro uložení tohoto souboru a ukončení nano.
+
+ 1. Restartujte Pi a poté se znovu připojte ve VS Code, jakmile se Pi restartuje.
+
+1. Z terminálu vytvořte novou složku v domovském adresáři uživatele `pi` nazvanou `gps-sensor`. V této složce vytvořte soubor nazvaný `app.py`.
+
+1. Otevřete tuto složku ve VS Code.
+
+1. GPS modul posílá UART data přes sériový port. Nainstalujte balíček `pyserial` pomocí Pip, abyste mohli komunikovat se sériovým portem z vašeho Python kódu:
+
+ ```sh
+ pip3 install pyserial
+ ```
+
+1. Přidejte následující kód do vašeho souboru `app.py`:
+
+ ```python
+ import time
+ import serial
+
+ serial = serial.Serial('/dev/ttyAMA0', 9600, timeout=1)
+ serial.reset_input_buffer()
+ serial.flush()
+
+ def print_gps_data(line):
+ print(line.rstrip())
+
+ while True:
+ line = serial.readline().decode('utf-8')
+
+ while len(line) > 0:
+ print_gps_data(line)
+ line = serial.readline().decode('utf-8')
+
+ time.sleep(1)
+ ```
+
+ Tento kód importuje modul `serial` z balíčku `pyserial`. Poté se připojí k sériovému portu `/dev/ttyAMA0` - to je adresa sériového portu, který Grove Pi Base Hat používá pro svůj UART port. Poté vymaže všechna existující data z tohoto sériového připojení.
+
+ Dále je definována funkce `print_gps_data`, která vypisuje předaný řádek do konzole.
+
+ Poté kód běží v nekonečné smyčce, čte co nejvíce řádků textu ze sériového portu v každé iteraci smyčky. Pro každý řádek volá funkci `print_gps_data`.
+
+ Po přečtení všech dat smyčka na 1 sekundu usne a poté se pokusí znovu.
+
+1. Spusťte tento kód. Uvidíte surový výstup z GPS senzoru, něco jako následující:
+
+ ```output
+ $GNGGA,020604.001,4738.538654,N,12208.341758,W,1,3,,164.7,M,-17.1,M,,*67
+ $GPGSA,A,1,,,,,,,,,,,,,,,*1E
+ $BDGSA,A,1,,,,,,,,,,,,,,,*0F
+ $GPGSV,1,1,00*79
+ $BDGSV,1,1,00*68
+ ```
+
+ > Pokud při zastavení a opětovném spuštění kódu dostanete jednu z následujících chyb, přidejte blok `try - except` do vaší while smyčky.
+
+ ```output
+ UnicodeDecodeError: 'utf-8' codec can't decode byte 0x93 in position 0: invalid start byte
+ UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf1 in position 0: invalid continuation byte
+ ```
+
+ ```python
+ while True:
+ try:
+ line = serial.readline().decode('utf-8')
+
+ while len(line) > 0:
+ print_gps_data()
+ line = serial.readline().decode('utf-8')
+
+ # There's a random chance the first byte being read is part way through a character.
+ # Read another full line and continue.
+
+ except UnicodeDecodeError:
+ line = serial.readline().decode('utf-8')
+
+ time.sleep(1)
+ ```
+
+> 💁 Tento kód najdete ve složce [code-gps/pi](../../../../../3-transport/lessons/1-location-tracking/code-gps/pi).
+
+😀 Programování vašeho GPS senzoru bylo úspěšné!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). I když se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro kritické informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/1-location-tracking/single-board-computer-gps-decode.md b/translations/cs/3-transport/lessons/1-location-tracking/single-board-computer-gps-decode.md
new file mode 100644
index 00000000..9c409237
--- /dev/null
+++ b/translations/cs/3-transport/lessons/1-location-tracking/single-board-computer-gps-decode.md
@@ -0,0 +1,75 @@
+
+# Dekódování GPS dat - Virtuální IoT zařízení a Raspberry Pi
+
+V této části lekce budete dekódovat NMEA zprávy přečtené ze senzoru GPS pomocí Raspberry Pi nebo Virtuálního IoT zařízení a extrahovat zeměpisnou šířku a délku.
+
+## Dekódování GPS dat
+
+Jakmile jsou surová NMEA data přečtena ze sériového portu, mohou být dekódována pomocí open source knihovny NMEA.
+
+### Úkol - dekódování GPS dat
+
+Naprogramujte zařízení tak, aby dekódovalo GPS data.
+
+1. Otevřete projekt aplikace `gps-sensor`, pokud již není otevřený.
+
+1. Nainstalujte balíček `pynmea2` pomocí Pip. Tento balíček obsahuje kód pro dekódování NMEA zpráv.
+
+ ```sh
+ pip3 install pynmea2
+ ```
+
+1. Přidejte následující kód do importů v souboru `app.py`, abyste importovali modul `pynmea2`:
+
+ ```python
+ import pynmea2
+ ```
+
+1. Nahraďte obsah funkce `print_gps_data` následujícím:
+
+ ```python
+ msg = pynmea2.parse(line)
+ if msg.sentence_type == 'GGA':
+ lat = pynmea2.dm_to_sd(msg.lat)
+ lon = pynmea2.dm_to_sd(msg.lon)
+
+ if msg.lat_dir == 'S':
+ lat = lat * -1
+
+ if msg.lon_dir == 'W':
+ lon = lon * -1
+
+ print(f'{lat},{lon} - from {msg.num_sats} satellites')
+ ```
+
+ Tento kód použije knihovnu `pynmea2` k analýze řádku přečteného ze sériového portu UART.
+
+ Pokud je typ věty zprávy `GGA`, jedná se o zprávu o určení polohy, která je zpracována. Hodnoty zeměpisné šířky a délky jsou přečteny ze zprávy a převedeny na desetinné stupně z formátu NMEA `(d)ddmm.mmmm`. Funkce `dm_to_sd` provádí tento převod.
+
+ Poté je zkontrolován směr zeměpisné šířky, a pokud je šířka jižní, hodnota je převedena na záporné číslo. Stejně tak u zeměpisné délky, pokud je západní, je převedena na záporné číslo.
+
+ Nakonec jsou souřadnice vytištěny na konzoli spolu s počtem satelitů použitých k určení polohy.
+
+1. Spusťte kód. Pokud používáte virtuální IoT zařízení, ujistěte se, že aplikace CounterFit běží a GPS data jsou odesílána.
+
+ ```output
+ pi@raspberrypi:~/gps-sensor $ python3 app.py
+ 47.6423109,-122.1390293 - from 3 satellites
+ ```
+
+> 💁 Tento kód najdete ve složce [code-gps-decode/virtual-device](../../../../../3-transport/lessons/1-location-tracking/code-gps-decode/virtual-device) nebo ve složce [code-gps-decode/pi](../../../../../3-transport/lessons/1-location-tracking/code-gps-decode/pi).
+
+😀 Vaše programování senzoru GPS s dekódováním dat bylo úspěšné!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za závazný zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/1-location-tracking/virtual-device-gps-sensor.md b/translations/cs/3-transport/lessons/1-location-tracking/virtual-device-gps-sensor.md
new file mode 100644
index 00000000..b0b012c0
--- /dev/null
+++ b/translations/cs/3-transport/lessons/1-location-tracking/virtual-device-gps-sensor.md
@@ -0,0 +1,144 @@
+
+# Čtení GPS dat - Virtuální IoT zařízení
+
+V této části lekce přidáte GPS senzor do svého virtuálního IoT zařízení a budete z něj číst hodnoty.
+
+## Virtuální hardware
+
+Virtuální IoT zařízení bude používat simulovaný GPS senzor, který je přístupný přes UART prostřednictvím sériového portu.
+
+Fyzický GPS senzor má anténu, která zachycuje rádiové vlny z GPS satelitů a převádí GPS signály na GPS data. Virtuální verze toto simuluje tím, že vám umožňuje buď nastavit zeměpisnou šířku a délku, poslat surové NMEA věty, nebo nahrát GPX soubor s více lokacemi, které mohou být vráceny postupně.
+
+> 🎓 NMEA věty budou pokryty později v této lekci
+
+### Přidání senzoru do CounterFit
+
+Pro použití virtuálního GPS senzoru je potřeba jej přidat do aplikace CounterFit.
+
+#### Úkol - přidání senzoru do CounterFit
+
+Přidejte GPS senzor do aplikace CounterFit.
+
+1. Vytvořte novou Python aplikaci na svém počítači ve složce `gps-sensor` s jediným souborem `app.py` a Python virtuálním prostředím, a přidejte CounterFit pip balíčky.
+
+ > ⚠️ Pokud potřebujete, můžete se podívat na [instrukce pro vytvoření a nastavení CounterFit Python projektu v lekci 1](../../../1-getting-started/lessons/1-introduction-to-iot/virtual-device.md).
+
+1. Nainstalujte další Pip balíček pro instalaci CounterFit shim, který dokáže komunikovat se senzory založenými na UART přes sériové připojení. Ujistěte se, že instalujete z terminálu s aktivovaným virtuálním prostředím.
+
+ ```sh
+ pip install counterfit-shims-serial
+ ```
+
+1. Ujistěte se, že webová aplikace CounterFit běží.
+
+1. Vytvořte GPS senzor:
+
+ 1. V poli *Create sensor* v panelu *Sensors* rozbalte pole *Sensor type* a vyberte *UART GPS*.
+
+ 1. Nechte *Port* nastavený na */dev/ttyAMA0*.
+
+ 1. Vyberte tlačítko **Add** pro vytvoření GPS senzoru na portu `/dev/ttyAMA0`.
+
+ 
+
+ GPS senzor bude vytvořen a objeví se v seznamu senzorů.
+
+ 
+
+## Programování GPS senzoru
+
+Virtuální IoT zařízení nyní může být naprogramováno pro použití virtuálního GPS senzoru.
+
+### Úkol - programování GPS senzoru
+
+Naprogramujte aplikaci GPS senzoru.
+
+1. Ujistěte se, že aplikace `gps-sensor` je otevřená ve VS Code.
+
+1. Otevřete soubor `app.py`.
+
+1. Přidejte následující kód na začátek `app.py` pro připojení aplikace k CounterFit:
+
+ ```python
+ from counterfit_connection import CounterFitConnection
+ CounterFitConnection.init('127.0.0.1', 5000)
+ ```
+
+1. Přidejte následující kód pod tento pro import potřebných knihoven, včetně knihovny pro CounterFit sériový port:
+
+ ```python
+ import time
+ import counterfit_shims_serial
+
+ serial = counterfit_shims_serial.Serial('/dev/ttyAMA0')
+ ```
+
+ Tento kód importuje modul `serial` z Pip balíčku `counterfit_shims_serial`. Poté se připojuje k sériovému portu `/dev/ttyAMA0` - to je adresa sériového portu, který virtuální GPS senzor používá pro svůj UART port.
+
+1. Přidejte následující kód pod tento pro čtení ze sériového portu a tisk hodnot do konzole:
+
+ ```python
+ def print_gps_data(line):
+ print(line.rstrip())
+
+ while True:
+ line = serial.readline().decode('utf-8')
+
+ while len(line) > 0:
+ print_gps_data(line)
+ line = serial.readline().decode('utf-8')
+
+ time.sleep(1)
+ ```
+
+ Funkce `print_gps_data` je definována tak, aby tiskla řádek, který jí byl předán, do konzole.
+
+ Poté kód běží v nekonečné smyčce, čte co nejvíce textových řádků ze sériového portu v každé iteraci smyčky. Pro každý řádek volá funkci `print_gps_data`.
+
+ Po přečtení všech dat smyčka na 1 sekundu usne a poté se pokusí znovu.
+
+1. Spusťte tento kód, ujistěte se, že používáte jiný terminál než ten, ve kterém běží aplikace CounterFit, aby aplikace CounterFit zůstala spuštěná.
+
+1. Z aplikace CounterFit změňte hodnotu GPS senzoru. Můžete to udělat jedním z následujících způsobů:
+
+ * Nastavte **Source** na `Lat/Lon` a zadejte konkrétní zeměpisnou šířku, délku a počet satelitů použitých k získání GPS fixu. Tato hodnota bude odeslána pouze jednou, takže zaškrtněte políčko **Repeat**, aby se data opakovala každou sekundu.
+
+ 
+
+ * Nastavte **Source** na `NMEA` a přidejte některé NMEA věty do textového pole. Všechny tyto hodnoty budou odeslány, s prodlevou 1 sekundy před každou novou větou GGA (fixace polohy).
+
+ 
+
+ Můžete použít nástroj jako [nmeagen.org](https://www.nmeagen.org) k vytvoření těchto vět nakreslením na mapě. Tyto hodnoty budou odeslány pouze jednou, takže zaškrtněte políčko **Repeat**, aby se data opakovala jednu sekundu poté, co byla všechna odeslána.
+
+ * Nastavte **Source** na GPX soubor a nahrajte GPX soubor s trasovými lokacemi. GPX soubory můžete stáhnout z řady populárních mapovacích a turistických webů, jako je [AllTrails](https://www.alltrails.com/). Tyto soubory obsahují více GPS lokací jako trasu a GPS senzor vrátí každou novou lokaci v intervalech 1 sekundy.
+
+ 
+
+ Tyto hodnoty budou odeslány pouze jednou, takže zaškrtněte políčko **Repeat**, aby se data opakovala jednu sekundu poté, co byla všechna odeslána.
+
+ Jakmile nastavíte GPS hodnoty, vyberte tlačítko **Set** pro potvrzení těchto hodnot na senzoru.
+
+1. Uvidíte surový výstup z GPS senzoru, něco jako následující:
+
+ ```output
+ $GNGGA,020604.001,4738.538654,N,12208.341758,W,1,3,,164.7,M,-17.1,M,,*67
+ $GNGGA,020604.001,4738.538654,N,12208.341758,W,1,3,,164.7,M,-17.1,M,,*67
+ ```
+
+> 💁 Tento kód najdete ve složce [code-gps/virtual-device](../../../../../3-transport/lessons/1-location-tracking/code-gps/virtual-device).
+
+😀 Vaše programování GPS senzoru bylo úspěšné!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádné nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/1-location-tracking/wio-terminal-gps-decode.md b/translations/cs/3-transport/lessons/1-location-tracking/wio-terminal-gps-decode.md
new file mode 100644
index 00000000..810497c0
--- /dev/null
+++ b/translations/cs/3-transport/lessons/1-location-tracking/wio-terminal-gps-decode.md
@@ -0,0 +1,83 @@
+
+# Dekódování GPS dat - Wio Terminal
+
+V této části lekce budete dekódovat zprávy NMEA přečtené ze senzoru GPS pomocí Wio Terminalu a extrahovat zeměpisnou šířku a délku.
+
+## Dekódování GPS dat
+
+Jakmile jsou surová data NMEA přečtena ze sériového portu, mohou být dekódována pomocí open source knihovny NMEA.
+
+### Úkol - dekódování GPS dat
+
+Naprogramujte zařízení tak, aby dekódovalo GPS data.
+
+1. Otevřete projekt aplikace `gps-sensor`, pokud již není otevřený.
+
+1. Přidejte závislost na knihovnu [TinyGPSPlus](https://github.com/mikalhart/TinyGPSPlus) do souboru `platformio.ini` projektu. Tato knihovna obsahuje kód pro dekódování dat NMEA.
+
+ ```ini
+ lib_deps =
+ mikalhart/TinyGPSPlus @ 1.0.2
+ ```
+
+1. V souboru `main.cpp` přidejte direktivu pro zahrnutí knihovny TinyGPSPlus:
+
+ ```cpp
+ #include
+ ```
+
+1. Pod deklarací `Serial3` deklarujte objekt TinyGPSPlus pro zpracování vět NMEA:
+
+ ```cpp
+ TinyGPSPlus gps;
+ ```
+
+1. Změňte obsah funkce `printGPSData` na následující:
+
+ ```cpp
+ if (gps.encode(Serial3.read()))
+ {
+ if (gps.location.isValid())
+ {
+ Serial.print(gps.location.lat(), 6);
+ Serial.print(F(","));
+ Serial.print(gps.location.lng(), 6);
+ Serial.print(" - from ");
+ Serial.print(gps.satellites.value());
+ Serial.println(" satellites");
+ }
+ }
+ ```
+
+ Tento kód čte další znak ze sériového portu UART do dekodéru NMEA `gps`. Po každém znaku zkontroluje, zda dekodér přečetl platnou větu, a poté ověří, zda přečetl platnou polohu. Pokud je poloha platná, odešle ji do sériového monitoru spolu s počtem satelitů, které přispěly k této fixaci.
+
+1. Sestavte a nahrajte kód do Wio Terminalu.
+
+1. Po nahrání můžete sledovat data GPS polohy pomocí sériového monitoru.
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ 47.6423109,-122.1390293 - from 3 satellites
+ ```
+
+> 💁 Tento kód najdete ve složce [code-gps-decode/wio-terminal](../../../../../3-transport/lessons/1-location-tracking/code-gps-decode/wio-terminal).
+
+😀 Váš program pro senzor GPS s dekódováním dat byl úspěšný!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte prosím na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/1-location-tracking/wio-terminal-gps-sensor.md b/translations/cs/3-transport/lessons/1-location-tracking/wio-terminal-gps-sensor.md
new file mode 100644
index 00000000..166b6ed5
--- /dev/null
+++ b/translations/cs/3-transport/lessons/1-location-tracking/wio-terminal-gps-sensor.md
@@ -0,0 +1,154 @@
+
+# Čtení GPS dat - Wio Terminal
+
+V této části lekce přidáte GPS senzor k vašemu Wio Terminalu a budete z něj číst hodnoty.
+
+## Hardware
+
+Wio Terminal potřebuje GPS senzor.
+
+Senzor, který budete používat, je [Grove GPS Air530 senzor](https://www.seeedstudio.com/Grove-GPS-Air530-p-4584.html). Tento senzor se může připojit k více GPS systémům pro rychlé a přesné určení polohy. Senzor se skládá ze dvou částí - hlavní elektroniky senzoru a externí antény připojené tenkým kabelem, která zachycuje rádiové vlny ze satelitů.
+
+Jedná se o UART senzor, takže posílá GPS data přes UART.
+
+### Připojení GPS senzoru
+
+Grove GPS senzor lze připojit k Wio Terminalu.
+
+#### Úkol - připojte GPS senzor
+
+Připojte GPS senzor.
+
+
+
+1. Zasuňte jeden konec Grove kabelu do konektoru na GPS senzoru. Kabel lze zasunout pouze jedním směrem.
+
+1. S Wio Terminalem odpojeným od počítače nebo jiného zdroje napájení připojte druhý konec Grove kabelu do levého Grove konektoru na Wio Terminalu, když se díváte na obrazovku. Tento konektor je nejblíže k tlačítku napájení.
+
+ 
+
+1. Umístěte GPS senzor tak, aby připojená anténa měla viditelnost na oblohu - ideálně vedle otevřeného okna nebo venku. Je snazší získat jasnější signál, pokud anténě nic nepřekáží.
+
+1. Nyní můžete připojit Wio Terminal k vašemu počítači.
+
+1. GPS senzor má 2 LED diody - modrou LED, která bliká při přenosu dat, a zelenou LED, která bliká každou sekundu při příjmu dat ze satelitů. Ujistěte se, že modrá LED bliká, když zapnete Wio Terminal. Po několika minutách začne blikat zelená LED - pokud ne, možná budete muset přemístit anténu.
+
+## Naprogramování GPS senzoru
+
+Wio Terminal nyní může být naprogramován pro použití připojeného GPS senzoru.
+
+### Úkol - naprogramujte GPS senzor
+
+Naprogramujte zařízení.
+
+1. Vytvořte zcela nový projekt pro Wio Terminal pomocí PlatformIO. Nazvěte tento projekt `gps-sensor`. Přidejte kód do funkce `setup` pro konfiguraci sériového portu.
+
+1. Přidejte následující direktivu `include` na začátek souboru `main.cpp`. Tím zahrnete hlavičkový soubor s funkcemi pro konfiguraci levého Grove portu pro UART.
+
+ ```cpp
+ #include
+ ```
+
+1. Pod tímto přidejte následující řádek kódu pro deklaraci sériového portu připojeného k UART portu:
+
+ ```cpp
+ static Uart Serial3(&sercom3, PIN_WIRE_SCL, PIN_WIRE_SDA, SERCOM_RX_PAD_1, UART_TX_PAD_0);
+ ```
+
+1. Musíte přidat nějaký kód pro přesměrování některých interních signalizačních handlerů na tento sériový port. Přidejte následující kód pod deklaraci `Serial3`:
+
+ ```cpp
+ void SERCOM3_0_Handler()
+ {
+ Serial3.IrqHandler();
+ }
+
+ void SERCOM3_1_Handler()
+ {
+ Serial3.IrqHandler();
+ }
+
+ void SERCOM3_2_Handler()
+ {
+ Serial3.IrqHandler();
+ }
+
+ void SERCOM3_3_Handler()
+ {
+ Serial3.IrqHandler();
+ }
+ ```
+
+1. Ve funkci `setup` pod konfigurací portu `Serial` nakonfigurujte UART sériový port pomocí následujícího kódu:
+
+ ```cpp
+ Serial3.begin(9600);
+
+ while (!Serial3)
+ ; // Wait for Serial3 to be ready
+
+ delay(1000);
+ ```
+
+1. Pod tímto kódem ve funkci `setup` přidejte následující kód pro připojení Grove pinu k sériovému portu:
+
+ ```cpp
+ pinPeripheral(PIN_WIRE_SCL, PIO_SERCOM_ALT);
+ ```
+
+1. Přidejte následující funkci před funkci `loop` pro odesílání GPS dat do sériového monitoru:
+
+ ```cpp
+ void printGPSData()
+ {
+ Serial.println(Serial3.readStringUntil('\n'));
+ }
+ ```
+
+1. Ve funkci `loop` přidejte následující kód pro čtení z UART sériového portu a tisk výstupu do sériového monitoru:
+
+ ```cpp
+ while (Serial3.available() > 0)
+ {
+ printGPSData();
+ }
+
+ delay(1000);
+ ```
+
+ Tento kód čte z UART sériového portu. Funkce `readStringUntil` čte až do terminátorového znaku, v tomto případě nového řádku. Tím se přečte celá NMEA věta (NMEA věty jsou ukončeny znakem nového řádku). Dokud lze číst data z UART sériového portu, jsou čtena a posílána do sériového monitoru prostřednictvím funkce `printGPSData`. Jakmile už nelze číst žádná data, funkce `loop` se zpozdí o 1 sekundu (1 000 ms).
+
+1. Sestavte a nahrajte kód do Wio Terminalu.
+
+1. Po nahrání můžete sledovat GPS data pomocí sériového monitoru.
+
+ ```output
+ > Executing task: platformio device monitor <
+
+ --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time
+ --- More details at http://bit.ly/pio-monitor-filters
+ --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 ---
+ --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
+ $GNGGA,020604.001,4738.538654,N,12208.341758,W,1,3,,164.7,M,-17.1,M,,*67
+ $GPGSA,A,1,,,,,,,,,,,,,,,*1E
+ $BDGSA,A,1,,,,,,,,,,,,,,,*0F
+ $GPGSV,1,1,00*79
+ $BDGSV,1,1,00*68
+ ```
+
+> 💁 Tento kód najdete ve složce [code-gps/wio-terminal](../../../../../3-transport/lessons/1-location-tracking/code-gps/wio-terminal).
+
+😀 Programování GPS senzoru bylo úspěšné!
+
+---
+
+**Prohlášení**:
+Tento dokument byl přeložen pomocí služby pro automatický překlad [Co-op Translator](https://github.com/Azure/co-op-translator). Ačkoli se snažíme o přesnost, mějte na paměti, že automatické překlady mohou obsahovat chyby nebo nepřesnosti. Původní dokument v jeho původním jazyce by měl být považován za autoritativní zdroj. Pro důležité informace doporučujeme profesionální lidský překlad. Neodpovídáme za žádná nedorozumění nebo nesprávné interpretace vyplývající z použití tohoto překladu.
\ No newline at end of file
diff --git a/translations/cs/3-transport/lessons/2-store-location-data/README.md b/translations/cs/3-transport/lessons/2-store-location-data/README.md
new file mode 100644
index 00000000..4de5fe58
--- /dev/null
+++ b/translations/cs/3-transport/lessons/2-store-location-data/README.md
@@ -0,0 +1,479 @@
+
+# Ukládání dat o poloze
+
+
+
+> Sketchnote od [Nitya Narasimhan](https://github.com/nitya). Klikněte na obrázek pro větší verzi.
+
+## Kvíz před lekcí
+
+[Kvíz před lekcí](https://black-meadow-040d15503.1.azurestaticapps.net/quiz/23)
+
+## Úvod
+
+V minulé lekci jste se naučili, jak používat GPS senzor k zachycení dat o poloze. Aby bylo možné tato data vizualizovat, například polohu nákladního vozu s potravinami a jeho cestu, je potřeba je odeslat do IoT služby v cloudu a následně někde uložit.
+
+V této lekci se naučíte různé způsoby ukládání IoT dat a jak ukládat data z vaší IoT služby pomocí serverless kódu.
+
+V této lekci se zaměříme na:
+
+* [Strukturovaná a nestrukturovaná data](../../../../../3-transport/lessons/2-store-location-data)
+* [Odesílání GPS dat do IoT Hubu](../../../../../3-transport/lessons/2-store-location-data)
+* [Horké, teplé a studené cesty](../../../../../3-transport/lessons/2-store-location-data)
+* [Zpracování GPS událostí pomocí serverless kódu](../../../../../3-transport/lessons/2-store-location-data)
+* [Účty Azure Storage](../../../../../3-transport/lessons/2-store-location-data)
+* [Propojení serverless kódu s úložištěm](../../../../../3-transport/lessons/2-store-location-data)
+
+## Strukturovaná a nestrukturovaná data
+
+Počítačové systémy pracují s daty, která mohou mít různé podoby. Mohou to být jednoduchá čísla, velké množství textu, videa, obrázky nebo IoT data. Data lze obvykle rozdělit do dvou kategorií - *strukturovaná* data a *nestrukturovaná* data.
+
+* **Strukturovaná data** jsou data s dobře definovanou, pevnou strukturou, která se nemění, a obvykle odpovídají tabulkám dat s vazbami. Příkladem mohou být údaje o osobě, jako je jméno, datum narození a adresa.
+
+* **Nestrukturovaná data** jsou data bez pevné, dobře definované struktury, která se může často měnit. Příkladem mohou být dokumenty, jako jsou textové dokumenty nebo tabulky.
+
+✅ Udělejte si průzkum: Napadnou vás další příklady strukturovaných a nestrukturovaných dat?
+
+> 💁 Existují také polostrukturovaná data, která mají strukturu, ale neodpovídají pevným tabulkám dat.
+
+IoT data jsou obvykle považována za nestrukturovaná data.
+
+Představte si, že přidáváte IoT zařízení do flotily vozidel velké komerční farmy. Můžete chtít použít různá zařízení pro různé typy vozidel. Například:
+
+* U zemědělských vozidel, jako jsou traktory, chcete GPS data, abyste zajistili, že pracují na správných polích.
+* U nákladních vozů přepravujících potraviny do skladů chcete GPS data, ale také údaje o rychlosti a zrychlení, abyste zajistili bezpečnou jízdu, a údaje o identitě řidiče a začátku/konce jízdy, abyste zajistili dodržování místních zákonů o pracovní době.
+* U chladírenských vozů chcete také údaje o teplotě, abyste zajistili, že potraviny během přepravy nezteplají nebo nezmrznou.
+
+Tato data se mohou neustále měnit. Například pokud je IoT zařízení v kabině nákladního vozu, může se data, která odesílá, měnit podle připojeného přívěsu, například odesílat údaje o teplotě pouze tehdy, když je připojen chladírenský přívěs.
+
+✅ Jaká další IoT data by mohla být zachycena? Přemýšlejte o typech nákladů, které mohou nákladní vozy přepravovat, a o datech údržby.
+
+Tato data se liší podle vozidla, ale všechna jsou odesílána do stejné IoT služby ke zpracování. IoT služba musí být schopna zpracovat tato nestrukturovaná data, uložit je způsobem, který umožňuje jejich vyhledávání nebo analýzu, a zároveň pracovat s různými strukturami těchto dat.
+
+### SQL vs NoSQL úložiště
+
+Databáze jsou služby, které umožňují ukládat a dotazovat se na data. Databáze se dělí na dva typy - SQL a NoSQL.
+
+#### SQL databáze
+
+První databáze byly relační databázové systémy (RDBMS), známé také jako SQL databáze podle jazyka Structured Query Language (SQL), který se používá k interakci s nimi pro přidávání, odstraňování, aktualizaci nebo dotazování na data. Tyto databáze mají schéma - dobře definovanou sadu tabulek dat, podobnou tabulce v Excelu. Každá tabulka má více pojmenovaných sloupců. Při vkládání dat přidáváte řádek do tabulky a vkládáte hodnoty do jednotlivých sloupců. To udržuje data v pevné struktuře - i když můžete nechat sloupce prázdné, pokud chcete přidat nový sloupec, musíte to udělat v databázi a vyplnit hodnoty pro stávající řádky. Tyto databáze jsou relační - jedna tabulka může mít vztah k jiné.
+
+
+
+Například pokud byste ukládali osobní údaje uživatelů do tabulky, měli byste pro každého uživatele nějaké interní jedinečné ID, které se používá v řádku tabulky obsahující jméno a adresu uživatele. Pokud byste pak chtěli uložit další údaje o tomto uživateli, například jeho nákupy, do jiné tabulky, měli byste v nové tabulce jeden sloupec pro ID tohoto uživatele. Při vyhledávání uživatele můžete použít jeho ID k získání osobních údajů z jedné tabulky a jeho nákupů z jiné.
+
+SQL databáze jsou ideální pro ukládání strukturovaných dat a pro situace, kdy chcete zajistit, že data odpovídají vašemu schématu.
+
+✅ Pokud jste SQL ještě nepoužívali, věnujte chvíli přečtení [stránky o SQL na Wikipedii](https://wikipedia.org/wiki/SQL).
+
+Mezi známé SQL databáze patří Microsoft SQL Server, MySQL a PostgreSQL.
+
+✅ Udělejte si průzkum: Přečtěte si o některých z těchto SQL databází a jejich schopnostech.
+
+#### NoSQL databáze
+
+NoSQL databáze se nazývají NoSQL, protože nemají stejnou pevnou strukturu jako SQL databáze. Jsou také známé jako dokumentové databáze, protože mohou ukládat nestrukturovaná data, jako jsou dokumenty.
+
+> 💁 Navzdory svému názvu některé NoSQL databáze umožňují používat SQL k dotazování na data.
+
+
+
+NoSQL databáze nemají předem definované schéma, které by omezovalo způsob ukládání dat. Můžete do nich vkládat jakákoli nestrukturovaná data, obvykle ve formátu JSON. Tyto dokumenty mohou být organizovány do složek, podobně jako soubory na vašem počítači. Každý dokument může mít jiné pole než ostatní dokumenty - například pokud byste ukládali IoT data z vašich zemědělských vozidel, některá mohou mít pole pro data z akcelerometru a rychlosti, jiná mohou mít pole pro teplotu v přívěsu. Pokud byste přidali nový typ nákladního vozu, například s vestavěnými váhami pro sledování hmotnosti přepravovaného zboží, vaše IoT zařízení by mohlo přidat toto nové pole a mohlo by být uloženo bez jakýchkoli změn v databázi.
+
+Mezi známé NoSQL databáze patří Azure CosmosDB, MongoDB a CouchDB.
+
+✅ Udělejte si průzkum: Přečtěte si o některých z těchto NoSQL databází a jejich schopnostech.
+
+V této lekci budete používat NoSQL úložiště pro ukládání IoT dat.
+
+## Odesílání GPS dat do IoT Hubu
+
+V minulé lekci jste zachytili GPS data z GPS senzoru připojeného k vašemu IoT zařízení. Aby bylo možné tato IoT data uložit v cloudu, je potřeba je odeslat do IoT služby. Opět budete používat Azure IoT Hub, stejnou IoT cloudovou službu, kterou jste použili v předchozím projektu.
+
+
+
+### Úkol - odesílání GPS dat do IoT Hubu
+
+1. Vytvořte nový IoT Hub pomocí bezplatné verze.
+
+ > ⚠️ Můžete se odkazovat na [pokyny pro vytvoření IoT Hubu z projektu 2, lekce 4](../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md#create-an-iot-service-in-the-cloud), pokud je to potřeba.
+
+ Nezapomeňte vytvořit novou Resource Group. Pojmenujte novou Resource Group `gps-sensor` a nový IoT Hub unikátním názvem založeným na `gps-sensor`, například `gps-sensor-`.
+
+ > 💁 Pokud stále máte svůj IoT Hub z předchozího projektu, můžete jej znovu použít. Nezapomeňte použít název tohoto IoT Hubu a Resource Group, ve které se nachází, při vytváření dalších služeb.
+
+1. Přidejte nové zařízení do IoT Hubu. Pojmenujte toto zařízení `gps-sensor`. Získejte připojovací řetězec pro zařízení.
+
+1. Aktualizujte kód svého zařízení tak, aby odesílal GPS data do nového IoT Hubu pomocí připojovacího řetězce zařízení z předchozího kroku.
+
+ > ⚠️ Můžete se odkazovat na [pokyny pro připojení vašeho zařízení k IoT z projektu 2, lekce 4](../../../2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md#connect-your-device-to-the-iot-service), pokud je to potřeba.
+
+1. Při odesílání GPS dat je odesílejte ve formátu JSON následujícím způsobem:
+
+ ```json
+ {
+ "gps" :
+ {
+ "lat" : ,
+ "lon" :
+ }
+ }
+ ```
+
+1. Odesílejte GPS data každou minutu, abyste nevyčerpali svůj denní limit zpráv.
+
+Pokud používáte Wio Terminal, nezapomeňte přidat všechny potřebné knihovny a nastavit čas pomocí NTP serveru. Váš kód také musí zajistit, že přečte všechna data ze sériového portu před odesláním GPS polohy, pomocí stávajícího kódu z minulé lekce. Použijte následující kód pro vytvoření JSON dokumentu:
+
+```cpp
+DynamicJsonDocument doc(1024);
+doc["gps"]["lat"] = gps.location.lat();
+doc["gps"]["lon"] = gps.location.lng();
+```
+
+Pokud používáte virtuální IoT zařízení, nezapomeňte nainstalovat všechny potřebné knihovny pomocí virtuálního prostředí.
+
+Pro Raspberry Pi i virtuální IoT zařízení použijte stávající kód z minulé lekce k získání hodnot zeměpisné šířky a délky a poté je odešlete ve správném formátu JSON pomocí následujícího kódu:
+
+```python
+message_json = { "gps" : { "lat":lat, "lon":lon } }
+print("Sending telemetry", message_json)
+message = Message(json.dumps(message_json))
+```
+
+> 💁 Tento kód najdete ve složce [code/wio-terminal](../../../../../3-transport/lessons/2-store-location-data/code/wio-terminal), [code/pi](../../../../../3-transport/lessons/2-store-location-data/code/pi) nebo [code/virtual-device](../../../../../3-transport/lessons/2-store-location-data/code/virtual-device).
+
+Spusťte kód svého zařízení a ujistěte se, že zprávy proudí do IoT Hubu pomocí příkazu CLI `az iot hub monitor-events`.
+
+## Horké, teplé a studené cesty
+
+Data, která proudí z IoT zařízení do cloudu, nejsou vždy zpracovávána v reálném čase. Některá data je potřeba zpracovat okamžitě, jiná mohou být zpracována o něco později a další mohou být zpracována až mnohem později. Tok dat do různých služeb, které data zpracovávají v různých časech, se označuje jako horké, teplé a studené cesty.
+
+### Horká cesta
+
+Horká cesta se týká dat, která je potřeba zpracovat v reálném čase nebo téměř v reálném čase. Horká data byste použili například pro upozornění, že se vozidlo blíží k depu, nebo že teplota v chladírenském voze je příliš vysoká.
+
+Pro použití horkých dat by váš kód reagoval na události ihned po jejich přijetí cloudovými službami.
+
+### Teplá cesta
+
+Teplá cesta se týká dat, která mohou být zpracována krátce po přijetí, například pro reporty nebo krátkodobé analýzy. Teplá data byste použili například pro denní reporty o ujetých kilometrech vozidel, využívající data z předchozího dne.
+
+Teplá data jsou uložena ihned po přijetí cloudovou službou v nějakém typu úložiště, které lze rychle přistupovat.
+
+### Studená cesta
+
+Studená cesta se týká historických dat, která jsou ukládána dlouhodobě a mohou být zpracována kdykoli. Například byste mohli použít studená data pro roční reporty o ujetých kilometrech vozidel nebo pro analýzu tras za účelem nalezení nejoptimálnější trasy pro snížení nákladů na palivo.
+
+Studená data jsou ukládána v datových skladech - databázích navržených pro ukládání velkého množství dat, která se nikdy nemění a lze je rychle a snadno dotazovat. Obvykle byste měli pravidelnou úlohu ve své cloudové aplikaci, která by běžela v pravidelných intervalech (denně, týdně nebo měsíčně) a přesouvala data z teplého úložiště do datového skladu.
+
+✅ Přemýšlejte o datech, která jste dosud v těchto lekcích zachytili. Jsou to horká, teplá nebo studená data?
+
+## Zpracování GPS událostí pomocí serverless kódu
+
+Jakmile data proudí do vašeho IoT Hubu, můžete napsat serverless kód, který bude naslouchat událostem publikovaným na Event-Hub kompatibilním endpointu. Toto je teplá cesta - tato data budou uložena a použita v další lekci pro reportování cesty.
+
+
+
+### Úkol - zpracování GPS událostí pomocí serverless kódu
+
+1. Vytvořte aplikaci Azure Functions pomocí Azure Functions CLI. Použijte runtime Python a vytvořte ji ve složce `gps-trigger`, přičemž použijte stejný název pro projekt aplikace Functions. Ujistěte se, že vytvoříte virtuální prostředí pro použití.
+> ⚠️ Můžete se odkazovat na [instrukce pro vytvoření projektu Azure Functions z projektu 2, lekce 5](../../../2-farm/lessons/5-migrate-application-to-the-cloud/README.md#create-a-serverless-application), pokud to bude potřeba.
+1. Přidejte trigger události IoT Hub, který využívá kompatibilní endpoint Event Hubu IoT Hubu.
+
+ > ⚠️ Pokud potřebujete, můžete se podívat na [instrukce pro vytvoření triggeru události IoT Hub z projektu 2, lekce 5](../../../2-farm/lessons/5-migrate-application-to-the-cloud/README.md#create-an-iot-hub-event-trigger).
+
+1. Nastavte připojovací řetězec kompatibilního endpointu Event Hubu v souboru `local.settings.json` a použijte klíč pro tento záznam v souboru `function.json`.
+
+1. Použijte aplikaci Azurite jako lokální emulátor úložiště.
+
+1. Spusťte aplikaci funkcí, abyste ověřili, že přijímá události z vašeho GPS zařízení. Ujistěte se, že vaše IoT zařízení také běží a odesílá GPS data.
+
+ ```output
+ Python EventHub trigger processed an event: {"gps": {"lat": 47.73481, "lon": -122.25701}}
+ ```
+
+## Účty Azure Storage
+
+
+
+Účty Azure Storage jsou univerzální službou úložiště, která umožňuje ukládat data různými způsoby. Data můžete ukládat jako blob, do front, do tabulek nebo jako soubory, a to vše současně.
+
+### Blob úložiště
+
+Slovo *Blob* znamená binární velké objekty, ale stalo se termínem pro jakákoli nestrukturovaná data. V blob úložišti můžete ukládat jakákoli data, od JSON dokumentů obsahujících IoT data až po obrazové a filmové soubory. Blob úložiště má koncept *kontejnerů*, pojmenovaných "bucketů", do kterých můžete ukládat data, podobně jako tabulky v relační databázi. Tyto kontejnery mohou obsahovat jednu nebo více složek pro ukládání blobů, a každá složka může obsahovat další složky, podobně jako jsou soubory ukládány na pevný disk vašeho počítače.
+
+V této lekci budete používat blob úložiště k ukládání IoT dat.
+
+✅ Udělejte si průzkum: Přečtěte si o [Azure Blob Storage](https://docs.microsoft.com/azure/storage/blobs/storage-blobs-overview?WT.mc_id=academic-17441-jabenn)
+
+### Tabulkové úložiště
+
+Tabulkové úložiště umožňuje ukládat polostrukturovaná data. Tabulkové úložiště je ve skutečnosti NoSQL databáze, takže nevyžaduje předem definovanou sadu tabulek, ale je navrženo pro ukládání dat do jedné nebo více tabulek s unikátními klíči pro definování každého řádku.
+
+✅ Udělejte si průzkum: Přečtěte si o [Azure Table Storage](https://docs.microsoft.com/azure/storage/tables/table-storage-overview?WT.mc_id=academic-17441-jabenn)
+
+### Frontové úložiště
+
+Frontové úložiště umožňuje ukládat zprávy o velikosti až 64 KB do fronty. Zprávy můžete přidávat na konec fronty a číst je z jejího začátku. Fronty ukládají zprávy neomezeně dlouho, pokud je stále k dispozici úložný prostor, což umožňuje dlouhodobé ukládání zpráv, které lze číst, když je to potřeba. Například pokud chcete spustit měsíční úlohu na zpracování GPS dat, můžete je každý den přidávat do fronty a na konci měsíce zpracovat všechny zprávy z fronty.
+
+✅ Udělejte si průzkum: Přečtěte si o [Azure Queue Storage](https://docs.microsoft.com/azure/storage/queues/storage-queues-introduction?WT.mc_id=academic-17441-jabenn)
+
+### Souborové úložiště
+
+Souborové úložiště umožňuje ukládání souborů v cloudu, ke kterým se mohou připojit aplikace nebo zařízení pomocí standardních průmyslových protokolů. Soubory můžete zapisovat do souborového úložiště a poté je připojit jako disk na vašem PC nebo Macu.
+
+✅ Udělejte si průzkum: Přečtěte si o [Azure File Storage](https://docs.microsoft.com/azure/storage/files/storage-files-introduction?WT.mc_id=academic-17441-jabenn)
+
+## Připojení serverless kódu k úložišti
+
+Vaše aplikace funkcí nyní potřebuje připojit blob úložiště, aby mohla ukládat zprávy z IoT Hubu. Existují dva způsoby, jak to udělat:
+
+* Uvnitř kódu funkce připojte blob úložiště pomocí Python SDK pro blob úložiště a zapisujte data jako blob.
+* Použijte výstupní vazbu funkce k propojení návratové hodnoty funkce s blob úložištěm a automaticky uložit blob.
+
+V této lekci použijete Python SDK, abyste viděli, jak pracovat s blob úložištěm.
+
+
+
+Data budou uložena jako JSON blob s následujícím formátem:
+
+```json
+{
+ "device_id": ,
+ "timestamp" :