The CS{Cell{...} bits: 0..267; refs: 0..0}
is the string representation of a slice. A slice is a structure for reading a cell.
In your example, depending on the context, 2 different cells where returned and converted to slices. The first one has 267 bits, and the second has 268 bits, but also starts from bit 1.
That is, even though these cells are different, because slices are starting at different indexes, they represent the same thing at the end, and as you said, after parsing them using parse_std_addr
, they both return the same address.
Using this address, they must produce the same child address. You're problem might lie in that part of your code.