still reworking and having errors