added google guava. precondition checks for bytearrayutil