added each and length methods