public function getOptions()
    {
        // Create Options List:
        
        $options = ArrayList::create();
        
        // Iterate Source Items:
        
        foreach ($this->getSourceEmpty() as $value => $title) {
            $options->push($this->getFieldOption($value, $title));
        }
        
        // Handle Tags:
        
        if ($this->usesTags()) {
            
            // Obtain Source Values:
            
            $values = $this->getSourceValues();
            
            // Iterate Value Array:
            
            foreach ($this->getValueArray() as $value) {
                
                // Handle Tag Values:
                
                if (!in_array($value, $values)) {
                    $options->push($this->getFieldOption($value, $value));
                }
                
            }
            
        }
        
        // Apply Extensions:
        
        $this->extend('updateOptions', $options);
        
        // Answer Options List:
        
        return $options;
    }