Added methods and constructor