what's the purpose of introducing the `child_i4x` temporary variable here?