fleshed out some more backend struture