docs: def makeArg(segID, N, CA, C, O, geo):
      '''Creates an Arginie residue'''
      ##R-Group
      CA_CB_length=geo.CA_CB_length
      C_CA_CB_angle=geo.C_CA_CB_angle
      N_C_CA_CB_diangle=geo.N_C_CA_CB_diangle
  
      CB_CG_length=geo.CB_CG_length
      CA_CB_CG_angle= geo.CA_CB_CG_angle
      N_CA_CB_CG_diangle=geo.N_CA_CB_CG_diangle
      
      CG_CD_length=geo.CG_CD_length
      CB_CG_CD_angle=geo.CB_CG_CD_angle
      CA_CB_CG_CD_diangle=geo.CA_CB_CG_CD_diangle
      
      CD_NE_length=geo.CD_NE_length
      CG_CD_NE_angle=geo.CG_CD_NE_angle
      CB_CG_CD_NE_diangle=geo.CB_CG_CD_NE_diangle
  
      NE_CZ_length=geo.NE_CZ_length
      CD_NE_CZ_angle=geo.CD_NE_CZ_angle
      CG_CD_NE_CZ_diangle=geo.CG_CD_NE_CZ_diangle
  
      CZ_NH1_length=geo.CZ_NH1_length
      NE_CZ_NH1_angle=geo.NE_CZ_NH1_angle
      CD_NE_CZ_NH1_diangle=geo.CD_NE_CZ_NH1_diangle
  
      CZ_NH2_length=geo.CZ_NH2_length
      NE_CZ_NH2_angle=geo.NE_CZ_NH2_angle
      CD_NE_CZ_NH2_diangle=geo.CD_NE_CZ_NH2_diangle
      
      carbon_b= calculateCoordinates(N, C, CA, CA_CB_length, C_CA_CB_angle, N_C_CA_CB_diangle)
      CB= Atom("CB", carbon_b, 0.0 , 1.0, " "," CB", 0,"C")
      carbon_g= calculateCoordinates(N, CA, CB, CB_CG_length, CA_CB_CG_angle, N_CA_CB_CG_diangle)
      CG= Atom("CG", carbon_g, 0.0, 1.0, " ", " CG", 0, "C")
      carbon_d= calculateCoordinates(CA, CB, CG, CG_CD_length, CB_CG_CD_angle, CA_CB_CG_CD_diangle)
      CD= Atom("CD", carbon_d, 0.0, 1.0, " ", " CD", 0, "C")
      nitrogen_e= calculateCoordinates(CB, CG, CD, CD_NE_length, CG_CD_NE_angle, CB_CG_CD_NE_diangle)
      NE= Atom("NE", nitrogen_e, 0.0, 1.0, " ", " NE", 0, "N")
      carbon_z= calculateCoordinates(CG, CD, NE, NE_CZ_length, CD_NE_CZ_angle, CG_CD_NE_CZ_diangle)
      CZ= Atom("CZ", carbon_z, 0.0, 1.0, " ", " CZ", 0, "C")
      nitrogen_h1= calculateCoordinates(CD, NE, CZ, CZ_NH1_length, NE_CZ_NH1_angle, CD_NE_CZ_NH1_diangle)
      NH1= Atom("NH1", nitrogen_h1, 0.0, 1.0, " ", " NH1", 0, "N")
      nitrogen_h2= calculateCoordinates(CD, NE, CZ, CZ_NH2_length, NE_CZ_NH2_angle, CD_NE_CZ_NH2_diangle)
      NH2= Atom("NH2", nitrogen_h2, 0.0, 1.0, " ", " NH2", 0, "N")
  
      ##Create Residue Data Structure
      res= Residue((' ', segID, ' '), "ARG", '    ')
      res.add(N)
      res.add(CA)
      res.add(C)
      res.add(O)
      res.add(CB)
      res.add(CG)
      res.add(CD)
      res.add(NE)
      res.add(CZ)
      res.add(NH1)
      res.add(NH2)
      return res