 let oneMillion = 1_000_000
 let justOverOneMillion = 1_000_000.000_000_1
 
-// Integer Conversion
+//: ## Numeric Conversion
+//: ### Integer Conversion
 //let cannotBeNegative: UInt8 = -1
 //let tooBig: Int8 = Int8.max + 1
 let twoThousand: UInt16 = 2_000
 let one: UInt8 = 1
 let twoThousandAndOne = twoThousand + UInt16(one)
 
-// Integer and Floating Point Conversion
+//: ### Integer and Floating Point Conversion
 let three = 3
 let pointOneFourOneFiveNine = 0.14159
 let pi2 = Double(three) + pointOneFourOneFiveNine

/* this is the second, nested multiline comment */
this is the end of the first multiline comment */

let cat = "🐱"; print(cat)

// Integers
let minValue = UInt8.min
let maxValue = UInt8.max

// Floating Point
var w = [1, 1.2]


// Type Safety and Type Inference
var meaningOfLife = 42
// inferred to be of type Int
// meaningOfLife = 35.0 //Type Error

3 + 0.14159


//: ## Type Aliases
// Type aliases are useful when you want to refer to an existing type by a name that is contextually more appropriate, such as when working with data of a specific size from an external source:

typealias AudioSample = UInt16
var macAmplitudeFound = AudioSample.min


//: ## Booleans
let orangesAreOrange = true
let turnipsAreDelicious = false

