     
     static func random() -> Int8 {
         
-        return 0
+        return Int8(Int.randomInInterval(ClosedInterval(0, Int(Int8.max))))
     }
     
     static func randomInInterval(intervals: ClosedInterval<Int8>...) -> Int8 {
         
-        return 0
+        return randomInInterval(intervals)
     }
     
     static func randomInInterval(intervals: [ClosedInterval<Int8>]) -> Int8 {
         
-        return 0
+        return Int8(Int.randomInInterval(map(intervals){ ClosedInterval(Int($0.start), Int($0.end)) }))
     }
 }
 

    
    static func randomInInterval(intervals: ClosedInterval<Float>...) -> Float {
    
        return 0
    }
    
    static func randomInInterval(intervals: [ClosedInterval<Float>]) -> Float {

    
    static func random() -> Int16 {
        
        return Int16(Int.randomInInterval(ClosedInterval(0, Int(Int16.max))))
    }
    
    static func randomInInterval(intervals: ClosedInterval<Int16>...) -> Int16 {
    
        return randomInInterval(intervals)
    }
    
    static func randomInInterval(intervals: [ClosedInterval<Int16>]) -> Int16 {
        
        return Int16(Int.randomInInterval(map(intervals){ ClosedInterval(Int($0.start), Int($0.end)) }))
    }
}

