Added strategies, setters and constructor