Split string with the most outer bracket in string

I want to split a string

(B+(([A/C]+D)*E))+([([A/F]+G)/H]*I)-([A/J]+K*L)

to an array like this

array = {"(B+(([A/C]+D)*E))", "([([A/F]+G)/H]*I)", "([A/J]+K*L)"}

I tried to use split() but failed.

Thank you.