mostly structure done