Register_array_symbolic changing arrays into arrays of single length 'tuples'

Hello,

When I use register_array_symbolic and define the size of the array to equal the length of an input, rather than returning a single array of length(x) it returns an object that is composed of x 1-length subarrays.

Here is an MWE:

using Symbolics,ModelingToolkit

function summing_vectors(vec1::Vector{Float64},vec2::Vector{Float64})
    return vec1.+vec2
end
@register_array_symbolic summing_vectors(vec1::AbstractVector,vec2::AbstractVector) begin
    size = length(vec1)
    eltype= eltype(vec1)
end

@variables (output(t))[1:200] (input_1(t))[1:200] (input_2(t))[1:200]

output = summing_vectors(input_1,input_2)
size(output)

The size of output is not a 200 length array like input_1/2 but instead the result is:

(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)

What am I doing wrong to make the return length be a single array?

use

size = (length(vec1),)
@register_array_symbolic summing_vectors(vec1::AbstractVector,vec2::AbstractVector) begin
    size = (length(vec1),)
    eltype= eltype(vec1)
end

@variables (output(t))[1:200] (input_1(t))[1:200] (input_2(t))[1:200]

output = summing_vectors(input_1,input_2)
size(output)
julia> size(output)
(200,)