Protein Oligomerization Through Domain Swapping: Role of Inter-molecular Interactions and Protein Concentration