Loose Implementation Changes from original,no dependencies resolved