structure refact.