mainly for ruby excercise