You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: topic.rb
    path of file: ./repos/jets/lib/jets/cfn/resource/sns
    
    the code of the file until where you have to start completion: # CloudFormation SNS Topic docs: https://amzn.to/2MYbUZc
module Jets::Cfn::Resource::Sns
  class Topic < Jets::Cfn::Base
    def initialize(props={})
      @props = props # associated_properties from dsl.rb
    end

    def definition
      {
  
    
    def merged_properties
      display_name = "{namespace} Topic"[0..99] # limit is 100 chars
      {
        DisplayName: display_name,
        # Not setting subscription this way but instead with a SNS::Subscription resource so the interface
        # is consistent. Leaving comment in here to remind me and in case decide to change this.
        # Subscription: [
        #   Endpoint: "!GetAtt {namespace}LambdaFunction.Arn",
        #   Protocol: "lambda"
        # ]
      }.deep_merge(@props)
    end