Added initializer list and decltype