Added socket? and sparse?