code: func (s *PublicBlockChainAPI) GetUncleByBlockNumberAndIndex(ctx context.Context, blockNr rpc.BlockNumber, index hexutil.Uint) (map[string]interface{}, error) {
  	block, err := s.b.BlockByNumber(ctx, blockNr)
  	if block != nil {
  		uncles := block.Uncles()
  		if index >= hexutil.Uint(len(uncles)) {
  			log.Debug("Requested uncle not found", "number", blockNr, "hash", block.Hash(), "index", index)
  			return nil, nil
  		}
  		block = types.NewBlockWithHeader(uncles[index])
  		return s.rpcOutputBlock(block, false, false)
  	}
  	return nil, err
  }
docs: // GetUncleByBlockNumberAndIndex returns the uncle block for the given block hash and index. When fullTx is true
  // all transactions in the block are returned in full detail, otherwise only the transaction hash is returned.