diff --git a/bigos/lecture20251125/urllib/chuck-norris-db.py b/bigos/lecture20251125/urllib/chuck-norris-db.py
new file mode 100644
index 0000000..cc1ed90
--- /dev/null
+++ b/bigos/lecture20251125/urllib/chuck-norris-db.py
@@ -0,0 +1,29 @@
+import json
+import urllib.request
+import pprint
+
+# See https://www.icndb.com
+
+def get_joke():
+
+ url = "https://api.chucknorris.io/jokes/random?limitTo=nerdy "
+
+ response = urllib.request.urlopen(url)
+ result = json.loads(response.read())
+
+# print(result)
+
+ return result
+
+def prettyPrintDictionary(myDict):
+ pprint.pprint(myDict)
+
+
+
+joke = get_joke()
+
+prettyPrintDictionary(joke)
+
+print(joke['value'])
+
+
diff --git a/bigos/lecture20251125/urllib/iss/iss-4.py b/bigos/lecture20251125/urllib/iss/iss-4.py
new file mode 100644
index 0000000..e7d652d
--- /dev/null
+++ b/bigos/lecture20251125/urllib/iss/iss-4.py
@@ -0,0 +1,55 @@
+
+import json
+import urllib.request
+import turtle
+
+import time
+
+url = 'http://api.open-notify.org/astros.json'
+response = urllib.request.urlopen(url)
+result = json.loads(response.read())
+
+print(result)
+
+print("People on the ISS: ",result['number'])
+people = result['people']
+#print(people)
+
+#for person in people:
+# print(person)
+
+for person in people :
+ print(person['name'])
+
+
+url = 'http://api.open-notify.org/iss-now.json'
+response = urllib.request.urlopen(url)
+result = json.loads(response.read())
+
+print(result)
+
+location = result['iss_position']
+latitude = location['latitude']
+longitude = location['longitude']
+
+print('Latitude: ',latitude)
+print('Longitude: ',longitude)
+
+screen = turtle.Screen()
+
+screen.setup(720,360)
+screen.setworldcoordinates(-180,-90,180,90)
+screen.bgpic('map.gif')
+
+
+screen.register_shape('iss.gif')
+iss = turtle.Turtle()
+iss.shape('iss.gif')
+iss.setheading(90)
+
+iss.penup()
+iss.goto(float(longitude),float(latitude) )
+
+# Print the map
+
+time.sleep(15)
diff --git a/bigos/lecture20251125/urllib/iss/iss-4a.py b/bigos/lecture20251125/urllib/iss/iss-4a.py
new file mode 100644
index 0000000..03f0250
--- /dev/null
+++ b/bigos/lecture20251125/urllib/iss/iss-4a.py
@@ -0,0 +1,78 @@
+
+import json
+import urllib.request
+import turtle
+import pprint
+
+import time
+
+debugFlag = True
+debugFlag = False
+
+url = 'http://api.open-notify.org/astros.json'
+response = urllib.request.urlopen(url)
+result = json.loads(response.read())
+
+if debugFlag:
+ pp = pprint.PrettyPrinter(indent=4)
+ pp.pprint(result)
+ time.sleep(10)
+
+people = result['people']
+ISSpeople = []
+Tiangongpeople = []
+
+for person in people:
+ if person['craft'] == 'ISS':
+ ISSpeople.append(person['name'])
+ else:
+ Tiangongpeople.append(person['name'])
+
+if debugFlag:
+ pp = pprint.PrettyPrinter(indent=4)
+ print("ISSpeople")
+ pp.pprint(ISSpeople)
+ print("Tiangongpeople")
+ pp.pprint(Tiangongpeople)
+ time.sleep(10)
+
+print("People on the ISS: ",len(ISSpeople))
+for person in ISSpeople :
+ print(f"\t{person}")
+
+print("People on the Tiangong: ",len(Tiangongpeople))
+for person in Tiangongpeople :
+ print(f"\t{person}")
+
+
+url = 'http://api.open-notify.org/iss-now.json'
+response = urllib.request.urlopen(url)
+result = json.loads(response.read())
+
+print(result)
+
+location = result['iss_position']
+latitude = location['latitude']
+longitude = location['longitude']
+
+print('Latitude: ',latitude)
+print('Longitude: ',longitude)
+
+screen = turtle.Screen()
+
+screen.setup(720,360)
+screen.setworldcoordinates(-180,-90,180,90)
+screen.bgpic('map.gif')
+
+
+screen.register_shape('iss.gif')
+iss = turtle.Turtle()
+iss.shape('iss.gif')
+iss.setheading(90)
+
+iss.penup()
+iss.goto(float(longitude),float(latitude) )
+
+# Print the map
+
+time.sleep(15)
diff --git a/bigos/lecture20251125/urllib/iss/iss-project-resources.zip b/bigos/lecture20251125/urllib/iss/iss-project-resources.zip
new file mode 100644
index 0000000..ba32cf1
Binary files /dev/null and b/bigos/lecture20251125/urllib/iss/iss-project-resources.zip differ
diff --git a/bigos/lecture20251125/urllib/iss/iss.gif b/bigos/lecture20251125/urllib/iss/iss.gif
new file mode 100644
index 0000000..b879e3e
Binary files /dev/null and b/bigos/lecture20251125/urllib/iss/iss.gif differ
diff --git a/bigos/lecture20251125/urllib/iss/iss.py b/bigos/lecture20251125/urllib/iss/iss.py
new file mode 100644
index 0000000..99be33e
--- /dev/null
+++ b/bigos/lecture20251125/urllib/iss/iss.py
@@ -0,0 +1,6 @@
+#!/bin/python3
+
+import json
+import turtle
+import urllib.request
+
diff --git a/bigos/lecture20251125/urllib/iss/iss2.gif b/bigos/lecture20251125/urllib/iss/iss2.gif
new file mode 100644
index 0000000..9fb8885
Binary files /dev/null and b/bigos/lecture20251125/urllib/iss/iss2.gif differ
diff --git a/bigos/lecture20251125/urllib/iss/map.gif b/bigos/lecture20251125/urllib/iss/map.gif
new file mode 100644
index 0000000..f798263
Binary files /dev/null and b/bigos/lecture20251125/urllib/iss/map.gif differ
diff --git a/bigos/lecture20251125/urllib/iss/result.html b/bigos/lecture20251125/urllib/iss/result.html
new file mode 100644
index 0000000..65aaafd
--- /dev/null
+++ b/bigos/lecture20251125/urllib/iss/result.html
@@ -0,0 +1,10415 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ✕
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{rawDetails}}
+
+
+
+
+ - Visual rect
+ - {{richDetails.visualRect.x}},{{richDetails.visualRect.y}}
+ {{richDetails.visualRect.width}}×{{richDetails.visualRect.height}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Skia Picture
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Rasterization costs in
+
+
+
+
+
+
+
+ 🔍
+
+
+
+
+
+
+
+
+
+
+ Image
+ (unknown)
+
+ [ Drag with mouse to zoom in and out ]
+
+
+
+
![Image snapshot]()
+
+
+
+
+
+ Organize by:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Diff
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ X no feedback
+ 0 uninitialized
+ . premonomorphic
+ 1 monomorphic
+ ^ recompute handler
+ P polymorphic
+ N megamorphic
+ G generic
+
+
+
+
+
+ Group Key
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
No heap dump selected
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Component details
+
+
No memory allocator dump selected
+
+
+
+
+
+
+ Memory maps
+
+
No memory maps selected
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
No memory memory dumps selected
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ (empty)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Sample View Option
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ | Running process: | |
+
+
+ | Running thread: | |
+
+
+ | Start: |
+
+
+
+ |
+
+
+ | Duration: |
+
+
+
+ |
+
+
+ | Active slices: | |
+
+
+ | Args: |
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ | Running process: | |
+
+
+ | Running thread: | |
+
+
+ | State: |
+ |
+
+
+ | Start: |
+
+
+
+ |
+
+
+ | Duration: |
+
+
+
+ |
+
+
+
+ | On CPU: | |
+
+
+
+ | Running instead: | |
+
+
+
+ | Args: | |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ←
+
+
+ →
+
+ 0 of 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Navigation
+
+
w/s
+
Zoom in/out (+shift: faster)
+
+
+
+
a/d
+
Pan left/right (+shift: faster)
+
+
+
+
→/shift-TAB
+
Select previous event
+
+
+
+
←/TAB
+
Select next event
+
+
+
Mouse Controls
+
+
+
alt-mousewheel
+
Zoom in/out
+
+
+
+
+ Select mode
+
+
+
+
+
-click/drag
+
Add events to the current selection
+
+
+
+
double click
+
Select all events with same title
+
+
+
+
+ Pan mode
+
+
+
+
+
+ Zoom mode
+
+
+
drag
+
Zoom in/out by dragging up/down
+
+
+
+
+ Timing mode
+
+
+
drag
+
Create or move markers
+
+
+
+
double click
+
Set marker range to slice
+
+
+
+
+
General
+
+
1-4
+
Switch mouse mode
+
+
+
+
shift
+
Hold for temporary select
+
+
+
+
space
+
Hold for temporary pan
+
+
+
+
+
+
enter
+
Step through search results
+
+
+
+
f
+
Zoom into selection
+
+
+
+
z/0
+
Reset zoom and pan
+
+
+
+
g/G
+
Toggle 60hz grid
+
+
+
+
+
+
h
+
Toggle low/high details
+
+
+
+
m
+
Mark current selection
+
+
+
+
p
+
Select power samples over current selection interval
+
+
+
+
`
+
Show or hide the scripting console
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
^_^
+
+
+
+
+ M
+
+
+
+
+ »
+
+
+ ?
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ◀
+
+
+ ▶
+
+
+
+
+
+
+ Group by:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Help
+
Feedback
+
+
+
+
+
+
+
+
+
+
+ (missing)
+ (empty)
+ (unmergeable)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ zero Histograms
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+