socket added as dependency