#==============================================================================
# String Extension by Sarlecc
#
# Strings
# "".remove_every(n, d) n = number, d = divsion (optional)
# "Example".remove_every(0, 3)# "".add_every(chars, n, d) chars = characters
# "Example".add_every("u", 2, 4)
# "".rand_chars
# "Example".rand_chars
# "".mix_up
#
# Arrays
# [].mean
# [].median
# [].range
# [].search(num1, num2) num2 is optional
#
# The following two methods return the id with the lowest or highest value in the given range
# both num1 and num2 are optional if omitted or values are to high then it will use 0 and the size
# of the array
# [].lowest(num1, num2)
# [].highest(num1, num2)
#
# Math
# Math.prime?(num)
# Math.prime2?(num)
# Math.prime2? is on average 2.5 times faster than Math.prime? if the number is prime; otherwise it is around 16-353 times slower
# its recommended that you use Math.prime? for checking thousands of numbers at a time as Math.prime2? will give an error (I assume
# that it has to do with the multithreading and attempting to do the next number while still doing the previous number).
# use Math.prime2? for checking larger primes
# Math.prime? time for number 18987964267331664557:
# 4521.762485 seconds
# Math.prime2? time for number 18987964267331664557:
# 1922.888493 seconds
# Math.prime? time for 106573388391:
# 0.000027-0.000028 seconds
# Math.prime2? time for 106573388391:
# 0.000452-0.009907 seconds
#==============================================================================