sm-transcript 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE.txt +23 -0
- data/README.txt +140 -0
- data/Rakefile +31 -0
- data/bin/results/PLACEHOLDER.txt +8 -0
- data/bin/sm-transcript +12 -0
- data/bin/transcripts/PLACEHOLDER.txt +8 -0
- data/lib/sm_transcript/LICENSE.txt +23 -0
- data/lib/sm_transcript/metadata.rb +69 -0
- data/lib/sm_transcript/metadata_reader.rb +56 -0
- data/lib/sm_transcript/options.rb +89 -0
- data/lib/sm_transcript/optparseExample.rb +113 -0
- data/lib/sm_transcript/process_csv_files_to_html.rb +58 -0
- data/lib/sm_transcript/process_seg_files.rb +21 -0
- data/lib/sm_transcript/process_seg_files_to_csv.rb +24 -0
- data/lib/sm_transcript/process_seg_files_to_html.rb +31 -0
- data/lib/sm_transcript/require_relative.rb +14 -0
- data/lib/sm_transcript/runner.rb +70 -0
- data/lib/sm_transcript/seg_reader.rb +42 -0
- data/lib/sm_transcript/transcript.rb +130 -0
- data/lib/sm_transcript/word.rb +31 -0
- data/lib/sm_transcript/wrd_reader.rb +42 -0
- data/test/Rakefile +14 -0
- data/test/results/IIHS_Diane_Davis_Nov2009.seg +425 -0
- data/test/results/NERCOMP-SpokenMedia4.wrd +6791 -0
- data/test/results/PLACEHOLDER.txt +8 -0
- data/test/results/PLACEHOLDER.txt.ignore +8 -0
- data/test/results/vijay_kumar.wrd +1675 -0
- data/test/results/wirehair-beetle.txt +6 -0
- data/test/test_metadata.rb +39 -0
- data/test/test_metadatareader.rb +30 -0
- data/test/test_options.rb +47 -0
- data/test/test_runner.rb +52 -0
- data/test/test_segreader.rb +39 -0
- data/test/test_transcript.rb +62 -0
- data/test/test_wrdreader.rb +43 -0
- data/test/transcripts/IIHS_Diane_Davis_Nov2009-t1.html +148 -0
- data/test/transcripts/PLACEHOLDER.txt +8 -0
- data/test/transcripts/data.js +24 -0
- data/test/transcripts/vijay_kumar-1.-t1.html +557 -0
- data/test/transcripts/vijay_kumar-1.t1.html +557 -0
- data/test/transcripts/vijay_kumar-t1.html +557 -0
- data/test/transcripts/vijay_kumar-t1.ttml +569 -0
- data/test/transcripts/vijay_kumar.data.js +2 -0
- data/test/transcripts/wirehair-beetle.data.js +3 -0
- metadata +234 -0
@@ -0,0 +1,39 @@
|
|
1
|
+
# $Id: test_metadata.rb 192 2010-03-27 01:24:26Z pwilkins $
|
2
|
+
# Copyright (c) 2010 Massachusetts Institute of Technology
|
3
|
+
# see LICENSE.txt for license text
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require "json/ext"
|
7
|
+
require 'extensions/kernel'
|
8
|
+
require 'test/unit'
|
9
|
+
require 'pp'
|
10
|
+
require 'shoulda'
|
11
|
+
require_relative '../lib/sm_transcript/metadata'
|
12
|
+
require_relative '../lib/sm_transcript/metadata_reader'
|
13
|
+
|
14
|
+
class TestMetadata < Test::Unit::TestCase
|
15
|
+
|
16
|
+
context "Call metadata_reader and write metadata file to default dest dir" do
|
17
|
+
should "create data.js file in ./transcripts" do
|
18
|
+
mdfile = SmTranscript::MetadataReader.from_file("results/wirehair-beetle.txt")
|
19
|
+
md = SmTranscript::Metadata.new(mdfile.metadata)
|
20
|
+
md.write_datajs("transcripts/data.js")
|
21
|
+
|
22
|
+
# for now just check for the existence of a file
|
23
|
+
assert(File.exists?("transcripts/data.js"))
|
24
|
+
end
|
25
|
+
|
26
|
+
should "add timestamp to id" do
|
27
|
+
mdfile = SmTranscript::MetadataReader.from_file("results/wirehair-beetle.txt")
|
28
|
+
md = SmTranscript::Metadata.new(mdfile.metadata)
|
29
|
+
md.write_datajs("transcripts/data.js")
|
30
|
+
|
31
|
+
json = File.new("transcripts/data.js")
|
32
|
+
doc = JSON.parse(File.read("transcripts/data.js"))
|
33
|
+
# for now, just test that the id ends with a hyphen and ten digits
|
34
|
+
reg = Regexp.new('.*-\d{10}$')
|
35
|
+
assert(reg.match(doc["videos"][0]["id"]))
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# $Id: test_metadatareader.rb 192 2010-03-27 01:24:26Z pwilkins $
|
2
|
+
# Copyright (c) 2010 Massachusetts Institute of Technology
|
3
|
+
# see LICENSE.txt for license text
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'extensions/kernel'
|
7
|
+
require 'test/unit'
|
8
|
+
require 'shoulda'
|
9
|
+
require_relative '../lib/sm_transcript/metadata_reader'
|
10
|
+
|
11
|
+
class TestMetadataReader < Test::Unit::TestCase
|
12
|
+
|
13
|
+
context "Specifying a metadata file the .to_file method" do
|
14
|
+
should "return an object (you call that a test?)" do
|
15
|
+
obj = SmTranscript::MetadataReader.from_file("results/wirehair-beetle.txt")
|
16
|
+
assert_not_nil(obj)
|
17
|
+
end
|
18
|
+
|
19
|
+
should "read the content and place it in fields " do
|
20
|
+
md = SmTranscript::MetadataReader.from_file("results/wirehair-beetle.txt")
|
21
|
+
# p md
|
22
|
+
assert_equal 'Nimrod Olson', md.metadata['name'].nil? ? 'empty' : md.metadata['name'].chomp
|
23
|
+
assert_equal 'nimrod@olson.org', md.metadata['email'].nil? ? 'empty' : md.metadata['email'].chomp
|
24
|
+
assert_equal "The Chapel of Perpetual Sorrow", md.metadata['org'].nil? ? 'empty' : md.metadata['org'].chomp
|
25
|
+
assert_equal "The Song of the Wirehair Beetle", md.metadata['title'].nil? ? 'empty' : md.metadata['title'].chomp
|
26
|
+
assert_equal "The Right Reverend Castro Mayhem", md.metadata['speaker'].nil? ? 'empty' : md.metadata['speaker'].chomp
|
27
|
+
assert_equal "aboriginal_hairstyling.mov", md.metadata['video'].nil? ? 'empty' : md.metadata['video'].chomp
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# $Id: test_options.rb 192 2010-03-27 01:24:26Z pwilkins $
|
2
|
+
# Copyright (c) 2010 Massachusetts Institute of Technology
|
3
|
+
# see LICENSE.txt for license text
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'extensions/kernel'
|
7
|
+
require 'test/unit'
|
8
|
+
require 'shoulda'
|
9
|
+
require 'ppcommand'
|
10
|
+
|
11
|
+
require_relative '../lib/sm_transcript/options'
|
12
|
+
|
13
|
+
class TestOptions < Test::Unit::TestCase
|
14
|
+
|
15
|
+
context "Supplying command line arguments" do
|
16
|
+
should "use defaults when no arguments are provided" do
|
17
|
+
opts = SmTranscript::Options.new([""])
|
18
|
+
assert_equal SmTranscript::Options::DEFAULT_SRC_DIR, opts.srcdir
|
19
|
+
assert_equal SmTranscript::Options::DEFAULT_DEST_DIR, opts.destdir
|
20
|
+
assert_equal SmTranscript::Options::DEFAULT_SRC_TYPE, opts.srctype
|
21
|
+
end
|
22
|
+
|
23
|
+
should "read scrdir:foo/bar, destdir:barney/rubble, srctype:foo" do
|
24
|
+
opts = SmTranscript::Options.new([
|
25
|
+
'--srcdir', 'foo/bar',
|
26
|
+
'--destdir', 'barney/rubble', '--srctype', 'foo'])
|
27
|
+
assert_equal 'foo/bar', opts.srcdir
|
28
|
+
assert_equal 'barney/rubble', opts.destdir
|
29
|
+
assert_equal 'foo', opts.srctype
|
30
|
+
end
|
31
|
+
|
32
|
+
should "read srctype:wrd, desttype:ttml" do
|
33
|
+
opts = SmTranscript::Options.new([
|
34
|
+
'--desttype', 'ttml', '--srctype', 'wrd'])
|
35
|
+
assert_equal 'ttml', opts.desttype
|
36
|
+
assert_equal 'wrd', opts.srctype
|
37
|
+
end
|
38
|
+
|
39
|
+
should "read srctype:wrd, desttype:datajs" do
|
40
|
+
opts = SmTranscript::Options.new([
|
41
|
+
'--desttype', 'datajs', '--srctype', 'wrd'])
|
42
|
+
assert_equal 'datajs', opts.desttype
|
43
|
+
assert_equal 'wrd', opts.srctype
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
data/test/test_runner.rb
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
# $Id: test_runner.rb 192 2010-03-27 01:24:26Z pwilkins $
|
2
|
+
# Copyright (c) 2010 Massachusetts Institute of Technology
|
3
|
+
# see LICENSE.txt for license text
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'extensions/kernel'
|
7
|
+
require 'test/unit'
|
8
|
+
require 'shoulda'
|
9
|
+
require_relative '../lib/sm_transcript/runner'
|
10
|
+
|
11
|
+
class TestRunner < Test::Unit::TestCase
|
12
|
+
|
13
|
+
context "Running the application" do
|
14
|
+
|
15
|
+
should "return specified source directory, and default values" do
|
16
|
+
runner = SmTranscript::Runner.new(["--srcdir", '../bin/results'])
|
17
|
+
opts = runner.options
|
18
|
+
assert_equal '../bin/results', opts.srcdir
|
19
|
+
assert_equal './transcripts', opts.destdir
|
20
|
+
assert_equal 'wrd', opts.srctype
|
21
|
+
assert_equal 'html', opts.desttype
|
22
|
+
runner.run
|
23
|
+
end
|
24
|
+
|
25
|
+
should "return specified dest directory, and default values" do
|
26
|
+
runner = SmTranscript::Runner.new(["--destdir", '../bin/transcripts'])
|
27
|
+
opts = runner.options
|
28
|
+
assert_equal '../bin/transcripts', opts.destdir
|
29
|
+
assert_equal './results', opts.srcdir
|
30
|
+
assert_equal 'wrd', opts.srctype
|
31
|
+
assert_equal 'html', opts.desttype
|
32
|
+
runner.run
|
33
|
+
end
|
34
|
+
|
35
|
+
should "return specified datajs dest type, and default values" do
|
36
|
+
runner = SmTranscript::Runner.new(["--srctype", 'txt', '--desttype', 'datajs'])
|
37
|
+
opts = runner.options
|
38
|
+
assert_equal './transcripts', opts.destdir
|
39
|
+
assert_equal './results', opts.srcdir
|
40
|
+
assert_equal 'txt', opts.srctype
|
41
|
+
assert_equal 'datajs', opts.desttype
|
42
|
+
runner.run
|
43
|
+
end
|
44
|
+
|
45
|
+
# I don't know how to test for the "invalid option" error that this test causes.
|
46
|
+
# should "return display usage information and optionally an error msg" do
|
47
|
+
# SmTranscript::Runner.new(["--niblick-mashie"])
|
48
|
+
# assert_equal SmTranscript::Options::DEFAULT_SRC_DIR, opts.srcdir
|
49
|
+
# end
|
50
|
+
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# $Id: test_segreader.rb 192 2010-03-27 01:24:26Z pwilkins $
|
2
|
+
# Copyright (c) 2010 Massachusetts Institute of Technology
|
3
|
+
# see LICENSE.txt for license text
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'extensions/kernel'
|
7
|
+
require 'test/unit'
|
8
|
+
require 'shoulda'
|
9
|
+
require_relative '../lib/sm_transcript/seg_reader'
|
10
|
+
|
11
|
+
class TestSegReader < Test::Unit::TestCase
|
12
|
+
|
13
|
+
context "app can find the seg file" do
|
14
|
+
should "verify that instance is not nil" do
|
15
|
+
segfile = SmTranscript::SegReader.from_file("results/IIHS_Diane_Davis_Nov2009.seg")
|
16
|
+
assert_not_nil(segfile)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
context "read a metadata item from seg file" do
|
21
|
+
should "return seg file name" do
|
22
|
+
segfile = SmTranscript::SegReader.from_file("results/IIHS_Diane_Davis_Nov2009.seg")
|
23
|
+
|
24
|
+
assert_equal "IIHS_Diane_Davis_Nov2009.seg",
|
25
|
+
segfile.metadata["orig_seg_path"].to_s
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
context "read a time-coded word from seg file" do
|
30
|
+
should "return first time-coded word in transcript" do
|
31
|
+
segfile = SmTranscript::SegReader.from_file("results/IIHS_Diane_Davis_Nov2009.seg")
|
32
|
+
|
33
|
+
assert_equal "11406", segfile.words[0].start_time
|
34
|
+
assert_equal "11500", segfile.words[0].end_time
|
35
|
+
assert_equal "oh", segfile.words[0].word
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
@@ -0,0 +1,62 @@
|
|
1
|
+
# $Id: test_transcript.rb 192 2010-03-27 01:24:26Z pwilkins $
|
2
|
+
# Copyright (c) 2010 Massachusetts Institute of Technology
|
3
|
+
# see LICENSE.txt for license text
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'extensions/kernel'
|
7
|
+
require 'test/unit'
|
8
|
+
require 'shoulda'
|
9
|
+
require_relative '../lib/sm_transcript/transcript'
|
10
|
+
require_relative '../lib/sm_transcript/seg_reader'
|
11
|
+
require_relative '../lib/sm_transcript/wrd_reader'
|
12
|
+
require_relative '../lib/sm_transcript/word'
|
13
|
+
|
14
|
+
class TestTranscript < Test::Unit::TestCase
|
15
|
+
# words = []
|
16
|
+
|
17
|
+
# context "write transcript to HTML in default dest dir" do
|
18
|
+
# should "create transcript file in ./transcripts" do
|
19
|
+
# words = [ SmTranscript::Word.new(11000, 120, "nougat") ]
|
20
|
+
# words << SmTranscript::Word.new(120, 130, "caramel")
|
21
|
+
# t = SmTranscript::Transcript.new(words)
|
22
|
+
# t.write_html("transcripts/IIHS_Diane_Davis_Nov2009-t1.html")
|
23
|
+
#
|
24
|
+
# # for now just check for the existence of a file
|
25
|
+
# assert(File.exists?("transcripts/IIHS_Diane_Davis_Nov2009-t1.html"))
|
26
|
+
# end
|
27
|
+
# end
|
28
|
+
|
29
|
+
context "write transcript to HTML in default dest dir and call SegReader" do
|
30
|
+
should "create transcript file in ./transcripts" do
|
31
|
+
segfile = SmTranscript::SegReader.from_file("results/IIHS_Diane_Davis_Nov2009.seg")
|
32
|
+
t = SmTranscript::Transcript.new(segfile.words)
|
33
|
+
t.write_html("transcripts/IIHS_Diane_Davis_Nov2009-t1.html")
|
34
|
+
|
35
|
+
# for now just check for the existence of a file
|
36
|
+
assert(File.exists?("transcripts/IIHS_Diane_Davis_Nov2009-t1.html"))
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
context "Calling WrdReader, writing transcript to HTML in default dest dir" do
|
41
|
+
should "create transcript file in ./transcripts" do
|
42
|
+
wrdfile = SmTranscript::WrdReader.from_file("results/vijay_kumar.wrd")
|
43
|
+
t = SmTranscript::Transcript.new(wrdfile.words)
|
44
|
+
t.write_html("transcripts/vijay_kumar-t1.html")
|
45
|
+
|
46
|
+
# for now just check for the existence of a file
|
47
|
+
assert(File.exists?("transcripts/vijay_kumar-t1.html"))
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
context "Calling WrdReader, writing transcript to timedText in default dest dir" do
|
52
|
+
should "create tt transcript file in ./transcripts" do
|
53
|
+
wrdfile = SmTranscript::WrdReader.from_file("results/vijay_kumar.wrd")
|
54
|
+
t = SmTranscript::Transcript.new(wrdfile.words)
|
55
|
+
t.write_ttml("transcripts/vijay_kumar-t1.ttml")
|
56
|
+
|
57
|
+
# for now just check for the existence of a file
|
58
|
+
assert(File.exists?("transcripts/vijay_kumar-t1.ttml"))
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# $Id: test_wrdreader.rb 192 2010-03-27 01:24:26Z pwilkins $
|
2
|
+
# Copyright (c) 2010 Massachusetts Institute of Technology
|
3
|
+
# see LICENSE.txt for license text
|
4
|
+
|
5
|
+
require 'rubygems'
|
6
|
+
require 'extensions/kernel'
|
7
|
+
require 'test/unit'
|
8
|
+
require 'shoulda'
|
9
|
+
require_relative '../lib/sm_transcript/wrd_reader'
|
10
|
+
|
11
|
+
class TestWrdReader < Test::Unit::TestCase
|
12
|
+
|
13
|
+
context "Specifying a WRD source file" do
|
14
|
+
should "verify that the file can be opened" do
|
15
|
+
wrdfile = SmTranscript::WrdReader.from_file("results/vijay_kumar.wrd")
|
16
|
+
assert_not_nil(wrdfile)
|
17
|
+
end
|
18
|
+
# should "report if the file can't be found" do
|
19
|
+
# wrdfile = SmTranscript::WrdReader.from_file("results/this_file_doesnt_exist")
|
20
|
+
# assert_not_nil(wrdfile)
|
21
|
+
# end
|
22
|
+
end
|
23
|
+
|
24
|
+
# context "read a metadata item from seg file" do
|
25
|
+
# should "return seg file name" do
|
26
|
+
# wrdfile = SmTranscript::WrdReader.from_file("results/IIHS_Diane_Davis_Nov2009.seg")
|
27
|
+
#
|
28
|
+
# assert_equal "IIHS_Diane_Davis_Nov2009.seg",
|
29
|
+
# wrdfile.metadata["orig_seg_path"].to_s
|
30
|
+
# end
|
31
|
+
# end
|
32
|
+
|
33
|
+
context "processing a WRD source file" do
|
34
|
+
should "create an Array of Word objects " do
|
35
|
+
wrdfile = SmTranscript::WrdReader.from_file("results/vijay_kumar.wrd")
|
36
|
+
|
37
|
+
assert_equal "5660", wrdfile.words[0].start_time
|
38
|
+
assert_equal "6627", wrdfile.words[0].end_time
|
39
|
+
assert_equal "okay", wrdfile.words[0].word
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
@@ -0,0 +1,148 @@
|
|
1
|
+
<span id='T11'>oh I think there're</span>
|
2
|
+
<span id='T12'>several critical questions</span>
|
3
|
+
<span id='T13'>of ones that I</span>
|
4
|
+
<span id='T14'>found in steady</span>
|
5
|
+
<span id='T15'>most myself</span>
|
6
|
+
<span id='T17'>are questions of insecurity</span>
|
7
|
+
<span id='T18'>into violence</span>
|
8
|
+
<span id='T19'>I</span>
|
9
|
+
<span id='T20'>see those and</span>
|
10
|
+
<span id='T21'>some</span>
|
11
|
+
<span id='T22'>pervasive the class</span>
|
12
|
+
<span id='T23'>much of a global</span>
|
13
|
+
<span id='T24'>found</span>
|
14
|
+
<span id='T25'>and I think</span>
|
15
|
+
<span id='T27'>have a lot to do</span>
|
16
|
+
<span id='T28'>with her and devil transition</span>
|
17
|
+
<span id='T29'>that in</span>
|
18
|
+
<span id='T30'>the developing world is</span>
|
19
|
+
<span id='T31'>facebook pull the</span>
|
20
|
+
<span id='T32'>climb economic globalization</span>
|
21
|
+
<span id='T34'>never flat</span>
|
22
|
+
<span id='T35'>it's a fairly standard</span>
|
23
|
+
<span id='T36'>way of understanding</span>
|
24
|
+
<span id='T37'>the crime and</span>
|
25
|
+
<span id='T38'>violence so</span>
|
26
|
+
<span id='T40'>I think it's</span>
|
27
|
+
<span id='T41'>import and because it means</span>
|
28
|
+
<span id='T42'>is that problem</span>
|
29
|
+
<span id='T43'>of r times</span>
|
30
|
+
<span id='T44'>and then</span>
|
31
|
+
<span id='T45'>many developing</span>
|
32
|
+
<span id='T46'>countries in</span>
|
33
|
+
<span id='T47'>different regions of the world</span>
|
34
|
+
<span id='T48'>are facing</span>
|
35
|
+
<span id='T49'>insecurity</span>
|
36
|
+
<span id='T50'>and violence</span>
|
37
|
+
<span id='T51'>that</span>
|
38
|
+
<span id='T53'>and a lot to do</span>
|
39
|
+
<span id='T54'>with the changing nature</span>
|
40
|
+
<span id='T55'>of an urban</span>
|
41
|
+
<span id='T56'>economies and</span>
|
42
|
+
<span id='T57'>how they linked</span>
|
43
|
+
<span id='T58'>to the global</span>
|
44
|
+
<span id='T59'>economy so</span>
|
45
|
+
<span id='T60'>and that's</span>
|
46
|
+
<span id='T61'>I think come</span>
|
47
|
+
<span id='T63'>pervasive challenge</span>
|
48
|
+
<span id='T67'>is that</span>
|
49
|
+
<span id='T68'>is one and two</span>
|
50
|
+
<span id='T69'>are three specializations</span>
|
51
|
+
<span id='T70'>that when means</span>
|
52
|
+
<span id='T71'>in and interconnected</span>
|
53
|
+
<span id='T72'>the</span>
|
54
|
+
<span id='T73'>global world aware</span>
|
55
|
+
<span id='T74'>technology</span>
|
56
|
+
<span id='T75'>and treat</span>
|
57
|
+
<span id='T76'>endowment</span>
|
58
|
+
<span id='T78'>of communication</span>
|
59
|
+
<span id='T79'>and</span>
|
60
|
+
<span id='T80'>this</span>
|
61
|
+
<span id='T81'>I d l</span>
|
62
|
+
<span id='T82'>ideology</span>
|
63
|
+
<span id='T83'>of those are all important</span>
|
64
|
+
<span id='T84'>to aspects</span>
|
65
|
+
<span id='T85'>of that I'm the</span>
|
66
|
+
<span id='T86'>planning to kept</span>
|
67
|
+
<span id='T88'>but I would say</span>
|
68
|
+
<span id='T89'>definitely need</span>
|
69
|
+
<span id='T90'>to people</span>
|
70
|
+
<span id='T91'>who are</span>
|
71
|
+
<span id='T92'>I had</span>
|
72
|
+
<span id='T93'>the think about them</span>
|
73
|
+
<span id='T94'>meaning regulator</span>
|
74
|
+
<span id='T95'>people and now but organizations</span>
|
75
|
+
<span id='T96'>howell</span>
|
76
|
+
<span id='T97'>organizations function</span>
|
77
|
+
<span id='T98'>because organizations</span>
|
78
|
+
<span id='T100'>there it's a whole</span>
|
79
|
+
<span id='T101'>literature in</span>
|
80
|
+
<span id='T102'>a field of organizational</span>
|
81
|
+
<span id='T103'>fury there</span>
|
82
|
+
<span id='T104'>would be important understand</span>
|
83
|
+
<span id='T105'>amiga small</span>
|
84
|
+
<span id='T106'>is that is our local</span>
|
85
|
+
<span id='T107'>government our rap</span>
|
86
|
+
<span id='T108'>community</span>
|
87
|
+
<span id='T109'>Iranian g l</span>
|
88
|
+
<span id='T110'>and something</span>
|
89
|
+
<span id='T111'>as large as</span>
|
90
|
+
<span id='T112'>steak ever</span>
|
91
|
+
<span id='T113'>meant and national</span>
|
92
|
+
<span id='T114'>government maybe</span>
|
93
|
+
<span id='T115'>at</span>
|
94
|
+
<span id='T116'>the u n r a</span>
|
95
|
+
<span id='T117'>global agency</span>
|
96
|
+
<span id='T118'>news activities</span>
|
97
|
+
<span id='T119'>influence</span>
|
98
|
+
<span id='T121'>and the</span>
|
99
|
+
<span id='T122'>small scale so I think</span>
|
100
|
+
<span id='T123'>organization</span>
|
101
|
+
<span id='T124'>analysis</span>
|
102
|
+
<span id='T125'>is a very important</span>
|
103
|
+
<span id='T126'>okay</span>
|
104
|
+
<span id='T129'>line</span>
|
105
|
+
<span id='T130'>is lambda t v</span>
|
106
|
+
<span id='T131'>for television the</span>
|
107
|
+
<span id='T132'>only about it I</span>
|
108
|
+
<span id='T133'>think and there's</span>
|
109
|
+
<span id='T134'>a lot of x segment</span>
|
110
|
+
<span id='T135'>about that and I didn't</span>
|
111
|
+
<span id='T136'>think that that eminently</span>
|
112
|
+
<span id='T137'>to the challenges the</span>
|
113
|
+
<span id='T138'>town and it's hard</span>
|
114
|
+
<span id='T139'>are how</span>
|
115
|
+
<span id='T140'>to get there</span>
|
116
|
+
<span id='T141'>yeah so in what</span>
|
117
|
+
<span id='T142'>are the strategic</span>
|
118
|
+
<span id='T143'>aims least okay many</span>
|
119
|
+
<span id='T144'>here and this meeting whatever</span>
|
120
|
+
<span id='T145'>to dick steps</span>
|
121
|
+
<span id='T146'>any to be take</span>
|
122
|
+
<span id='T147'>ten where</span>
|
123
|
+
<span id='T148'>you can accomplish</span>
|
124
|
+
<span id='T149'>something in the short term</span>
|
125
|
+
<span id='T150'>right away</span>
|
126
|
+
<span id='T151'>but also</span>
|
127
|
+
<span id='T152'>you know the the</span>
|
128
|
+
<span id='T153'>you're not going to accomplish</span>
|
129
|
+
<span id='T154'>everything that you're leading</span>
|
130
|
+
<span id='T155'>out in year vision and</span>
|
131
|
+
<span id='T156'>so</span>
|
132
|
+
<span id='T157'>you want to make</span>
|
133
|
+
<span id='T158'>progress</span>
|
134
|
+
<span id='T159'>continually</span>
|
135
|
+
<span id='T160'>every</span>
|
136
|
+
<span id='T161'>states has a has</span>
|
137
|
+
<span id='T162'>some of the small success</span>
|
138
|
+
<span id='T163'>but</span>
|
139
|
+
<span id='T164'>for a need for its allies</span>
|
140
|
+
<span id='T165'>success because</span>
|
141
|
+
<span id='T166'>you can't put</span>
|
142
|
+
<span id='T167'>an institution</span>
|
143
|
+
<span id='T168'>it's</span>
|
144
|
+
<span id='T169'>and develop an institution</span>
|
145
|
+
<span id='T170'>like to emulate</span>
|
146
|
+
<span id='T171'>your have</span>
|
147
|
+
<span id='T172'>in mind</span>
|
148
|
+
<span id='T173'>of the night</span>
|